Inserer colonne + nomer la colonne

Bonjour,

Malgrés diverse recheche un peu partout sur le net, je n'arrive toujous pas a trouvé de solution, je fais donc appelle à votre aide.

je cherche à inserer une colonne dans un tableau nommé "SAP"à l'aide d'une macro.

J'aimerais pouvoir inserer une colonne entre la colonne"jour" et "révision" sans pour autant que cela décale le tableau qui se trouve au-dessus. Une fois decallé j'aimerais quel soit directement nomé.

Une fois que j'aurais executé cette macro, elle ne devra pas pouvoir être executer une 2nd fois.

Le tableau nomé "SAP"dans lequel on inserera une colonne n'aura jamais le même nombre de ligne.

Merci de votre

12book4.xlsx (12.93 Ko)

Bonjour,

l'enregistreur de macro te fournissait 90% du code.

If Range("Table2[[#Headers],[Révision]]").Offset(, -1).Value <> "Nouveau" Then
    Range("Table2[[#Headers],[Révision]]").ListObject.ListColumns.Add Position:=11
    Range("Table2[[#Headers],[Révision]]").Offset(, -1).Value = "Nouveau"
End If

eric

Bonjour à tous

Un essai à tester.

Bye !

19book4-v1.xlsm (28.16 Ko)

Bonjour à tous,

Une autre proposition.

Cdlt.

27book4.xlsm (26.51 Ko)
Public Sub InsertColumunInTable()
Dim lo As ListObject, n As Double
Const strHeader As String = "XXX_"
    Set lo = ActiveSheet.ListObjects(1)
    On Error Resume Next
    n = Application.Match(strHeader, lo.HeaderRowRange, 0)
    If Err.Number <> 0 Then
        Err.Clear
        With lo
            .ListColumns.Add Position:=11
            .HeaderRowRange(11).Value = strHeader
        End With
    End If
End Sub

Bonjour Eric,

Super cela fonctionne.

J'ai essayé d'enregistré et de comprendre ce qui ne collait pas. Mais étant novice en VBA, j'ai eu beau cherché je n'ai pas compris ce qui clochait.

Je vais essayer les methodes proposées et je vous fais un retour.

Merci

Bonjour,

Merci à vous tous les 3 solutions fonctionnent.

Je vais les decortiquer et essayer de comprendre comment ca fonctionne!

Rechercher des sujets similaires à "inserer colonne nomer"