Macro VBA qui vérifie des égalités entre cellules de deux feuilles

Bonjour, j'ai une première feuille qui est une base de données avec différentes colonnes

Et une deuxième feuille, qui contient une liste (ligne par ligne dans une colonne) de chacune des colonnes

Le but de la macro est de vérifier que les colonnes de la première feuille sont dans le bon ordre selon la liste de la deuxième feuille et qu'elle corresponde bien ,vous avez une idée de macro qui permet de faire ça ? (un truc du style for I in range (le nombre de colonnes), feuil1!A1 = feuil2!A1, feuil1!B1=feuil2!A2

Cordialement,

Salut Skearns,

Ce sera plus facile...


A+

5exemple.xlsx (8.54 Ko)

Ouais, ça, j'aurais pu le faire aussi !
Equivalent dans sa structure à ton fichier réel, stp!

1exemple2.xlsx (9.29 Ko)

En gros check que les colonnes de "Data" sont bien les noms indiqués dans Attribut, dans l'ordre de ce dernier

Salut Skearns,

premier jet...
La macro démarre à l'ouverture du fichier et remet les colonnes dans l'ordre indiqué dans 'Attribut'.

Private Sub Workbook_Open()
'
Dim tTab
'
Application.ScreenUpdating = False
'
With Worksheets("Attribut")
    tTab = .Range("A1:A" & .Range("A" & Rows.Count).End(xlUp).Row).Value
End With
With Worksheets("Data")
    For x = 1 To UBound(tTab, 1)
        For y = 1 To .Cells(1, Columns.Count).End(xlToLeft).Column
            If .Cells(1, y) = tTab(x, 1) And y <> x Then _
                .Columns(x).Insert shift:=xlToRight: _
                .Columns(y + 1).Cut .Columns(x): _
                .Columns(y + 1).Delete shift:=xlToLeft
        Next
    Next
End With
'
Application.ScreenUpdating = True
'
End Sub

- Je pense comprendre qu'il faut également vérifier la correspondance orthographique des colonnes !?
Comment, sur quelles bases? Supposons qu'il y ait des fautes à chaque mot, je ne vois pas comment faire...

- si il y a des colonnes absentes dans 'Data', j'imagine qu'il faut les créer ? À confirmer !
Si oui, fichier-exemple, stp...

Pour tester le code, mélange les colonnes de ce fichier, enregistre et quitte puis ré-ouvre.

2skearns.xlsm (17.89 Ko)


A+

Rechercher des sujets similaires à "macro vba qui verifie egalites entre deux feuilles"