Inputbox et erreurs
Résolu
Vaalrhona
-
pijaku Messages postés 13513 Statut Modérateur -
pijaku Messages postés 13513 Statut Modérateur -
Bonjour,
J'essaie de créer une boite de dialogue dans laquelle on peut indiquer le nom d'une feuille présente dans le classeur afin que les formules présentes dans la feuille active se mettent à jour avec les bonnes références (c'est clair ou pas ? XD)
Bref, je bloque déjà pour créer la boite de dialogue, il me sort "nombre d'arguments incorrect ou affectation de propriété incorrecte". Je ne sais pas quoi faire pour régler le problème.
De l'aide svp ?
Merci d'avance
J'essaie de créer une boite de dialogue dans laquelle on peut indiquer le nom d'une feuille présente dans le classeur afin que les formules présentes dans la feuille active se mettent à jour avec les bonnes références (c'est clair ou pas ? XD)
Bref, je bloque déjà pour créer la boite de dialogue, il me sort "nombre d'arguments incorrect ou affectation de propriété incorrecte". Je ne sais pas quoi faire pour régler le problème.
De l'aide svp ?
Merci d'avance
Sub Inputbox()
Dim feuille As Object
Dim message As String
message = "Indiquer la feuille de référence :"
feuille = Inputbox(message)
End Sub
A voir également:
- Inputbox et erreurs
- Impossible d'installer java les commutateurs suivants comportent des erreurs ✓ - Forum Logiciels
- Redémarrer pour réparer les erreurs de lecteur ✓ - Forum Windows 8 / 8.1
- Une erreur s'est produite une erreur s'est produite et il est impossible de charger la page. ✓ - Forum Instagram
- Vba inputbox liste déroulante ✓ - Forum Excel
- Impossible d'installer java "les commutateurs suivants comportent des erreu - Forum Logiciels
2 réponses
Bonjour,
A lire tout d'abord : https://forums.commentcamarche.net/forum/affich-37636380-vba-inputbox
Ensuite :
1- ne pas nommer une Sub d'un nom utilisé par VBA.
Donc remplace :
par (par exemple) :
2- Une InputBox renvoie un String. Il te faut donc déclarer une variable de type String pour en stocker le résultat.
Remplace donc :
par :
ça devrait le faire...
A lire tout d'abord : https://forums.commentcamarche.net/forum/affich-37636380-vba-inputbox
Ensuite :
1- ne pas nommer une Sub d'un nom utilisé par VBA.
Donc remplace :
Sub Inputbox()
par (par exemple) :
Sub MonInputbox()
2- Une InputBox renvoie un String. Il te faut donc déclarer une variable de type String pour en stocker le résultat.
Remplace donc :
Dim feuille As Object
par :
Dim feuille As String
ça devrait le faire...
Ouais !!!
Merci ça marche.
Je suis sûre d'avoir déjà testé avec String sans résultat mais là ça fonctionne...
Bref.
Maintenant, autre question : comment faire pour qu'Excel reconnaisse ma valeur en tant que nom de feuille ?
Mes feuilles sont nommées comme ça : 15-08 16-08 17-08 ...
Une par jour.
En fait, j'ai la formule suivante (pour la feuille 17-08, qui fait donc référence à la feuille précédente) : =D:D-'16-08'!D:D
Et je voudrais que le '12-08' se mette à jour avec l'info saisie dans la boite de dialogue...
Merci ça marche.
Je suis sûre d'avoir déjà testé avec String sans résultat mais là ça fonctionne...
Bref.
Maintenant, autre question : comment faire pour qu'Excel reconnaisse ma valeur en tant que nom de feuille ?
Mes feuilles sont nommées comme ça : 15-08 16-08 17-08 ...
Une par jour.
En fait, j'ai la formule suivante (pour la feuille 17-08, qui fait donc référence à la feuille précédente) : =D:D-'16-08'!D:D
Et je voudrais que le '12-08' se mette à jour avec l'info saisie dans la boite de dialogue...
A condition que la feuille que tu vas renseigner dans l'inputbox existe ET que tu souhaites placer ta formule en A1 de la feuille 17-08 :
Sub MonInputbox() Dim feuille As String Dim message As String message = "Indiquer la feuille de référence :" feuille = Inputbox(message) Sheets("17-08").Range("A1").FormulaLocal = "=D:D-'" & feuille & "'!D:D" End Sub