L
ludom
Guest
Bonjour à tous
Alors voici mon problème :
je crée une macro (CreationTableau) me permettant de modifier les valeurs de cellules et d'ensuite les remettre en fonction de la sélection de l'utilisateur.
Je commence donc par "sauvegarder" toute mes valeurs (qui sont des formules) dans un tableau (TableauF), et les adresses des cellules dans un autre tableau (TableauA). Le reste de la macro fait sa petite popote sans problèmes, toutes les données sont bien "sauvées"
Ensuite Je fait une 2e macro (RetablirCellules) qui, en fonction de la sélection de l'utilisateur, va réécrire les formules dans les cellules sélectionnées.
Je passe donc mes 2 tableaux en paramètre (TabA et TabF) mais c'est là ou ca pose probleme : lorsque je fait un simple test grâce à une msgbox ( msgbox (TabA(0) par exemple) j'obtient une erreur n°9.
Voici le code :
Public TableauA()
Public TableauF()
_____
Sub CreationTableau() 'celle ci fonctionne correctement
Dim TableauF(256) As String
Dim TableauA(256) As String
Dim k As Integer
k = 0
For Each c In Range("R3:AG18") 'range du tableau excel de l'utilisateur
FormuleCellule = c.Formula 'récup de la formule de la cellule
AdresseCellule = c.Address(False, False) 'récup de l'adresse de la cellule
TableauF(k) = FormuleCellule
TableauA(k) = AdresseCellule
k = k + 1
Next c
End Sub
______
Sub RetablirCellules()
Call Retablir(TableauF(), TableauA())
End Sub
_____
Sub Retablir(TabF(), TabA())
MsgBox (TabA(0)) 'ici je fait un simple test et j’obtiens l'erreur 9
MsgBox (TabF(0)) 'ici pareil
End Sub
_____
Les tableaux que je passe en paramètres ont l'air completement vide et dans la fenêtre variables locales, mes tableaux n'ont pas de "+" a coté me permettant de regarder les valeurs. Pourquoi ?
D'avance merci pour votre aide
Alors voici mon problème :
je crée une macro (CreationTableau) me permettant de modifier les valeurs de cellules et d'ensuite les remettre en fonction de la sélection de l'utilisateur.
Je commence donc par "sauvegarder" toute mes valeurs (qui sont des formules) dans un tableau (TableauF), et les adresses des cellules dans un autre tableau (TableauA). Le reste de la macro fait sa petite popote sans problèmes, toutes les données sont bien "sauvées"
Ensuite Je fait une 2e macro (RetablirCellules) qui, en fonction de la sélection de l'utilisateur, va réécrire les formules dans les cellules sélectionnées.
Je passe donc mes 2 tableaux en paramètre (TabA et TabF) mais c'est là ou ca pose probleme : lorsque je fait un simple test grâce à une msgbox ( msgbox (TabA(0) par exemple) j'obtient une erreur n°9.
Voici le code :
Public TableauA()
Public TableauF()
_____
Sub CreationTableau() 'celle ci fonctionne correctement
Dim TableauF(256) As String
Dim TableauA(256) As String
Dim k As Integer
k = 0
For Each c In Range("R3:AG18") 'range du tableau excel de l'utilisateur
FormuleCellule = c.Formula 'récup de la formule de la cellule
AdresseCellule = c.Address(False, False) 'récup de l'adresse de la cellule
TableauF(k) = FormuleCellule
TableauA(k) = AdresseCellule
k = k + 1
Next c
End Sub
______
Sub RetablirCellules()
Call Retablir(TableauF(), TableauA())
End Sub
_____
Sub Retablir(TabF(), TabA())
MsgBox (TabA(0)) 'ici je fait un simple test et j’obtiens l'erreur 9
MsgBox (TabF(0)) 'ici pareil
End Sub
_____
Les tableaux que je passe en paramètres ont l'air completement vide et dans la fenêtre variables locales, mes tableaux n'ont pas de "+" a coté me permettant de regarder les valeurs. Pourquoi ?
D'avance merci pour votre aide