Microsoft 365 InputBox : saisir ou modifier le contenu de la cellule cliquée à l'aide de l'InputBox

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous,
Je vous souhaite un beau dimanche :)

Pour des besoins dans l'un de mes fichiers de travail, je voudrais saisir ou modifier le contenu de la cellule cliqué à l'aide de l'InputBox :

l'InputBox prenant le contenu de la cellule (vide ou non), je saisi dans l'InputBox,
1 - à la validation, la cellule cliquée prend la valeur de l'InputBox,
2 - si j'annule, la cellule cliquée garde sa valeur (vide ou non).

J'ai fait des recherches (peut-être mal cherché) et des tentatives sans trouver comment coder.
Auriez-vous la solution ?

Un grand merci à toutes et à tous,
Je mets un p'tit fichier test et je continue à chercher.
Amicalement,
lionel :)
 

Pièces jointes

  • inputBox_test.xlsm
    14.4 KB · Affichages: 14

TooFatBoy

XLDnaute Barbatruc
Je n'ose demander si ma macro fonctionne maintenant qu'il n'y a plus ta macro "format".
J'ai peur de repartir pour au moins 6 heures de galère... 🤣



:eek: En fait ça ne fait pas 6 heures que ça durait cette histoire de macro "format", mais presque 24 heures puisque c'est depuis #35 (c'est-à-dire 40 minutes après la question posée en #25...) que je dis qu'il faut changer son nom ! 🤣🤣🤣🤣🤣🤣

Extrait de #35 :

Et du coup je te propose quand même un dernier essai de ma part :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'
Dim nom$

If Not Application.Intersect(Target, Range("c6:f15")) Is Nothing Then
Application.EnableEvents = False
nom = inPROUTbox.value("saisir ,Modifier ou Annuler", "Ecrire, modifier et OK ou Annuler", format(Target.value, "dd/mm/yyyy hh:mm:ss"))
If nom <> "" Then Target = CDate(nom)
[a1].Select
Application.EnableEvents = True
Exit Sub
End If

End Sub
Pour que ça puisse fonctionner il faut changer, dans le "Module 1", le nom de la macro "format" en autre chose.
 
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour TooFatBoy, Bonjour Gérard et tous les participants :)
Bonjour à toutes et à tous :)

@TooFatBoy : Je suis désolé, je n'ai pas eu de temps ce matin ... ça marche :) Merci pour ta patience :)

Par contre, je m'étais trompé de sujet mais notre job75 m'a bien donné la solution sur un autre fil pour le presque même sujet https://www.excel-downloads.com/thr...-le-textbox1-casse-meninges-1-du-we.20066096/
Et comme je n'arrive pas à reproduire ce que tu as fait sur le fichier joint, je lance l'appel aussi à Gérard,
Amicalement,
lionel :)
 

Pièces jointes

  • inputBox_ModifCellule_Gerard3S.xlsm
    27 KB · Affichages: 1
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Et comme je n'arrive pas à reproduire ce que tu as fait sur le fichier joint, je lance l'appel aussi à Gérard

J'ai pourtant changé seulement deux choses :

- CSTR remplacé par FORMAT (où tu indiques le format sous lequel doit s'afficher la date dans la box),

- Target=nom remplacé par Target=CDATE(nom) puisque tu as dit que ça devait rester des dates et heures dans la feuille (mais je répète qu'une vérification sur la saisie ne serait pas superflue).
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Malheureusement, dans le fichier de @job75, ça ne se passe pas dans le code de la feuille mais dans l'UserForm inPROUTbox et ce n'est pas la même chose.
Essaye de changer la première ligne de la macro Private Sub UserForm_Initialize() du Uesrform inPROUTbox ainsi :
VB:
TextBox1.Value = Format(ActiveCell.Value, "dd/mm/yyyy hh:mm")


Juste une remarque : je ne te dis pas que le pseudo menu qui s'affiche ne sert à rein car tu le sais déjà, mais je te signale que le "couper" ne coupe rien...
 
Dernière édition:

Discussions similaires

Réponses
8
Affichages
447

Statistiques des forums

Discussions
311 720
Messages
2 081 925
Membres
101 841
dernier inscrit
ferid87