J'ai une macro qui renomme des headers.
Je dois renommer un header qui contient des chaines constantes et variables. Je m'explique:
xxx yyyyyyy xxxxxxx
X est une chaine de caractere qui est tout le temps constante
Y varie en taille (4 a 15 caracteres)
Comment faire pour que la macro repere les x, et les renomme comme je le veux ?
Ci dessous mon bout de code
Merci pour votre aide si vous pouvez
Code:
Sub headers()
Dim celltxt As Range
Worksheets("blabla").Activate
Set celltxt = ActiveSheet.Range("A1:DD1")
For Each cel In celltxt
If InStr(1, cel, "hello") Then
cel.Value = "goodbye"
End If
Next
End sub
Un remarque en passant
Plutôt que des x et des y , un exemple concret avec des mots intelligibles serait plus parlant, non ?
EDITION: Houps, j'avions point vu le code VBA et les mots hello et goodbye
Sub headers()
Dim c As Range, celltxt As Range
Set celltxt = ActiveSheet.Range("A1:DD1")
For Each c In celltxt
If InStr(1, c, "hello") Then
c.Value = Replace(c.Text, "hello", "goodbye")
End If
Next
End Sub
Header 1: "Barcode Name ID"
Header 2: "Library type ID"
Header 3: "Barcode sample type"
ce que je souhaite c'est que le code repere "Barcode xxxxxx ID"
et le renome en "Barcode Sample ID"
et ne touche pas aux autres headers (le 2, le 3... et tous les autres)
Le xxx varie de 4 a 15 caracteres et n'est jamais fixe
choupi_nette
Ce serait sans doute encore plus clair avec un fichier Excel exemple
-avec sur un onglet la situation initiale
-et sur un autre onglet le résultat à obtenir
PS: Tu as testé le code VBA (code adapté de ton code VBA exemple et qui illustre la proposition de camarchepas) de mon précédent message ?