Inputbox et erreurs

Résolu
Vaalrhona -  
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   -
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

Sub Inputbox()
Dim feuille As Object
Dim message As String

message = "Indiquer la feuille de référence :"
feuille = Inputbox(message)

End Sub

2 réponses

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
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 :
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...
1
Vaalrhona
 
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...
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
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
0
Vaalrhona > pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention  
 
Bizarre, il me met des ' autour du 08 : =D:D-16-'08'!D:D
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761 > Vaalrhona
 
Copie/colle ton code ici...
0
Vaalrhona
 
Non c'est bon ! My bad, j'avais mal mis les guillemets/apostrophes, ça fonctionne !

Merci beaucoup :D
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761 > Vaalrhona
 
de rien.
A+
0