Rien ne marche comme prévu

  • Initiateur de la discussion Initiateur de la discussion Joshua1969
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

Joshua1969

Guest
Re-Bonjour,
Décidément, VBA est compliqué pour les débutants sans mode opératoire !
Je joins un fichier Test pour expliquer ma demande.

Je voudrais que les données dans le tableau de D7 à AH? (tableau à ligne variable) soient affectées à un tableau de variable.
D'ou le code suivant que j'ai essayé de faire :

Option Explicit

Sub TabTou()

Dim Derlig As Long
Derlig = Range("C65536").End(xlUp).Row
ReDim TabTou(1 To Derlig, 1 To 31) As Variant
Dim i As Byte, j As Byte
For i = 1 To UBound(TabTou, 1)
For j = 1 To UBound(TabTou, 2)
TabTou(i, j) = i & j
Debug.Print TabTou(i, j)
Next j
Next i

End Sub

J'ai bien entendu une erreur sur TabTou(i, j) = i & j (indice n'appartient pas à la sélection). Je suppose que c'est une histoire de coordonnées mais je ne trouve pas la solution.
Si quelqu'un peut m'aider, ce serait un soulagement pour moi de comprendre.

Bonne soirée et merci à vous d'avance.
 

Pièces jointes

Re : Rien ne marche comme prévu

Bonsoir Joshua1969, suistrop,

Je ne comprends pas bien non plus, mais il me semble toutefois qu'on ne peut pas, en VBA, donner le même nom à une variable et à une procédure.

A ta place, j'essaierais donc de changer le nom de la procédure, par exemple :

Code:
Sub [COLOR="Red"][B]TabTout[/B][/COLOR]()
...
...
...
End Sub

Espérant avoir aidé.

Cordialement.
 
Re : Rien ne marche comme prévu

Bonsoir à tous

Re...
Re-Bonjour,
Décidément, VBA est compliqué pour les débutants sans mode opératoire !
Je joins un fichier Test pour expliquer ma demande.

Je voudrais que les données dans le tableau de D7 à AH? (tableau à ligne variable) soient affectées à un tableau de variable.
D'ou le code suivant que j'ai essayé de faire :

Option Explicit

Sub TabTou()

Dim Derlig As Long
Derlig = Range("C65536").End(xlUp).Row
ReDim TabTou(1 To Derlig, 1 To 31) As Variant
Dim i As Byte, j As Byte
For i = 1 To UBound(TabTou, 1)
For j = 1 To UBound(TabTou, 2)
TabTou(i, j) = i & j
Debug.Print TabTou(i, j)
Next j
Next i

End Sub

J'ai bien entendu une erreur sur TabTou(i, j) = i & j (indice n'appartient pas à la sélection). Je suppose que c'est une histoire de coordonnées mais je ne trouve pas la solution.
Si quelqu'un peut m'aider, ce serait un soulagement pour moi de comprendre.

Bonne soirée et merci à vous d'avance.
Cette procédure fonctionne parfaitement dans les limites que vous avez choisies, à savoir un tableau de 254 lignes sur 254 colonnes au maximum.
Si vous voulez dépasser ces limites, modifiez le typage des variables i et j.​
ROGER2327
#4339


Vendredi 13 Haha 138 (Saint et Sainte Fenouillard, Sainte famille, SQ)
27 Vendémiaire An CCXIX
2010-W42-1T22:17:34Z
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
774
Réponses
10
Affichages
659
  • Question Question
Microsoft 365 Erreur UBound
Réponses
4
Affichages
292
Réponses
4
Affichages
729
Réponses
5
Affichages
905
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
902
Retour