Bonjour à tous,
J'ai une petite problématique.
J'ai créé une procédure pour definir automatiquement un plage nommée au lancement d'Excel:
' definir une nouvelle plage
Sub DefPlage()
Dim r As Range
Dim lifin As Long
' Definition de la plage BU
lifin = Sheets("Source").Cells(1, 1).End(xlToRight).Column
Set r = Sheets("Source").Range(Cells(1, 1), Cells(1, lifin))
ActiveWorkbook.Names.Add Name:="BU", RefersTo:="=Source!" & r.Address
End Sub
Elle fonctionne nickel et j'ai une plage contenant par exemple "TRUC1;TRUC2;TRUC3"
Maintenant je veux definir une procédure pour mettre à jour cette Plage nommée en cas de modif.
J'utilise ce code:
Sub ModPlage()
Dim plage As String
Dim lifin As Long
' Modification de la plage BU
lifin = Sheets("Source").Cells(1, 1).End(xlToRight).Column
plage = Sheets("Source").Range(Cells(1, 1), Cells(1, lifin)).Address
ActiveWorkbook.Names("BU").RefersToR1C1 = plage
End Sub
Et là ça ne fonctionne plus car quand je modifie ma plage depuis Excel, la plage nommée dont la valeur est "="$A$1:$D$1".... En fait il y a les " qui viennent mettre le bordel.
Une idée pour résoudre cela?
Merci