posez Vos questions



1 résultat trouvé pour chouse3

chouse3

probléme avec le macro - Mar 24 Fév - 21:35

salut,

J'ai voulu créer un boucle capable de faire la même procédure pour chaque macro. Or je ne sais pas comment faire pour simplifier les choses et s'il y a des fautes de syntaxe. En effet, quand j'ai voulu exécuter la macro ci-dessous, les erreurs de compilation s'affichent: tableau attendu ou encore next sans for. Quelqu'un pourra-il voir ce qui n'allait pas dans mon code? Merci.

Mon code actuel:

Sub Macro1()


'Conversion du libellé GB en libellé FR
'
Dim vecteur_GB(1 To 6) As String
Dim vecteur_FR(1 To 6) As String
Dim j As Single

'Sheets("Base").Select
'Range("B2").Select

For j = 1 To 6
vecteur_GB(j) = Sheets("Base").Range("B2").Offset(j - 1, 0).Value
Next j

For j = 1 To 6
If vecteur_GB(j) = "Déjeuner" Then
vecteur_FR(j) = "Dîner"
ElseIf vecteur_GB(j) = "Matin" Then
vecteur_FR(j) = "Soir"
End If
Next j

For j = 1 To 6
Sheets("Base").Range("J2").Offset(j - 1).Value = vecteur_FR(j)
Next j



'Conversion des libellés CH en libellé PL

Dim vecteur_CH(1 To 6) As String
Dim vecteur_PL(1 To 6) As String
Dim k As Single

'Sheets("Base").Select
'Range("C2").Select


For k = 1 To 6
vecteur_CH(k) = Sheets("Base").Range("C2").Offset(k - 1, 0).Value
Next k

For k = 1 To 6
If vecteur_CH(k) = "AB" Then
vecteur_PL(k) = "CD"
ElseIf vecteur_CH(k) = "EF" Then
vecteur_PL(k) = "GH"
ElseIf vecteur_CH(k) = "IJ" Then
vecteur_PL(k) = "KL"
End If
Next k


For k = 1 To 6
Sheets("Base").Range("K2").Offset(k - 1).Value = vecteur_PL(k)
Next k


End Sub

Par ailleurs, si on veut remplacer les données d'une feuille sur une autre feuille, suffira-t-il de remplacer le mot "base" par le nom d'un autre onglet dans lequel contiennent les données de départ?


Revenir en haut

La date/heure actuelle est Lun 21 Mai - 8:34