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

Usine à gaz

XLDnaute Barbatruc
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
C'est quand même hallucinant, ça fait deux pages qu'on essaye de savoir si tu as pensé à renommer ta macro "format" (en "formater" par exemple) avant de tester la macro que j'ai proposée, pour qu'elle ne vienne pas interférer avec l'instruction VBA "Format" que j'utilise dans ma macro.

Tu ne peux pas simplement dire "oui" ou "non" ???
 
Dernière édition:

soan

XLDnaute Barbatruc
Inactif
Bonsoir Lionel, le fil,

tu as raison : tu as bien créé une Sub = subroutine = sous-programme, pas une Function = une fonction ; mais d'un autre côté, un des mot-clés de VBA est Format et celui-ci est bien utilisé en tant que Function ; l'équivalent Excel sur une feuille de calcul est la fonction TEXTE() ; tu as écrit : « Bizarrement, ça fonctionne chez moi lol :) » ; même si ça fonctionne, c'est quand même fortement déconseillé d'utiliser un des mots-clés de VBA, car dans ce cas, on dit que tu surcharges le mot-clé en question ; maintenant, suppose que dans le même module où tu as mis ta sub format() tu aies besoin d'utiliser la fonction Format() de VBA, dis-moi comment la compilation va pouvoir deviner s'il faut utiliser ta sub format() ou sa fonction Format() ?

en fait, je crois bien qu'il y a un moyen de distinguer les deux en utilisant un préfixe : pour ta sub format, ça serait Module1.format() si tu as placé ta sub dans Module1 ; mais pour la fonction Format() de VBA, ça serait avec quoi ? peut-être avec WorksheetFunction.Format() ? mais de toutes façons, même si ça marche, ça complique les choses d'utiliser comme nom de sub ou de function des homonymes des mots-clés de VBA.

après tout ce que je viens d'écrire, si tu préfères quand même utiliser le nom « format » pour ta sub, comme tu viens de l'écrire dans ton post #70, c'est ton choix... :)

soan
 

TooFatBoy

XLDnaute Barbatruc
Mais pourquoi la renommer §
puisque je ne m'en sert pas dans le fichie
r.
Je te l'ai expliqué en #58 et en #60 et en #69.
[edit] et déjà en #35 aussi... 😅 [/edit]

C'est quand même hallucinant, ça fait deux pages qu'on essaye de savoir si tu as pensé à renommer ta macro "format" (en "formater" par exemple) avant de tester la macro que j'ai proposée, pour qu'elle ne vienne pas interférer avec l'instruction VBA "Format" que j'utilise dans ma macro.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
315 132
Messages
2 116 593
Membres
112 799
dernier inscrit
valdeff