Test apparition variable dans une chaîne de caractères
Résolu
N
-
ThauTheme Messages postés 1564 Statut Membre -
ThauTheme Messages postés 1564 Statut Membre -
Bonjour,
j'aurais une question toute simple que je ne parviens néanmoins pas à résoudre. Tout d'abord, dans la feuille Feuil1, je stocke une chaîne de caractère (un mot) dans ma variable MC1 (premier mot-clé). Ensuite je voudrais savoir si ce mot-clé apparait dans le titre d'un document. Mes titres de documents sont listés dans les cellules de ma feuille nommée Liste.
J'avais pensé faire comme ceci mais ça ne fonctionne pas (Erreur de compilation : Erreur de synthaxe).
For j = 1 To i 'j va parcourir la liste de tout les fichiers référencés précédemment
'MOTS-CLES
If Range("A" & k).Value Like * & MC1 & * Then
k = 18 + j
Range("A" & k, "B" & k).Merge 'Fusionne les cellules Ak et Bk du Nom
Range("C" & k, "D" & k).Merge 'Fusionne les cellules Ck et Dk du Type
Sheets("Liste").Range("A" & j & ":E" & j).Copy Sheets("Feuil1").Range("A" & k & ":G" & k) 'Remplit la k-ième ligne du tableau de résultat
Merci d'avance pour les réponses que vous pourrez m'apporter
j'aurais une question toute simple que je ne parviens néanmoins pas à résoudre. Tout d'abord, dans la feuille Feuil1, je stocke une chaîne de caractère (un mot) dans ma variable MC1 (premier mot-clé). Ensuite je voudrais savoir si ce mot-clé apparait dans le titre d'un document. Mes titres de documents sont listés dans les cellules de ma feuille nommée Liste.
J'avais pensé faire comme ceci mais ça ne fonctionne pas (Erreur de compilation : Erreur de synthaxe).
For j = 1 To i 'j va parcourir la liste de tout les fichiers référencés précédemment
'MOTS-CLES
If Range("A" & k).Value Like * & MC1 & * Then
k = 18 + j
Range("A" & k, "B" & k).Merge 'Fusionne les cellules Ak et Bk du Nom
Range("C" & k, "D" & k).Merge 'Fusionne les cellules Ck et Dk du Type
Sheets("Liste").Range("A" & j & ":E" & j).Copy Sheets("Feuil1").Range("A" & k & ":G" & k) 'Remplit la k-ième ligne du tableau de résultat
Merci d'avance pour les réponses que vous pourrez m'apporter
A voir également:
- Test apparition variable dans une chaîne de caractères
- Test performance pc - Guide
- Test steam deck oled - Guide
- Test disque dur - Télécharger - Informations & Diagnostic
- Test composant pc - Guide
- Caractères spéciaux - Guide
7 réponses
Bonjour N, bonjour le forum,
Peut-être avec la fonction InStr qui donnerait :
Peut-être avec la fonction InStr qui donnerait :
If InStr(1, Range("A" & k).Value, "MC1", vbTextCompare) <> 0 Then
Re,
Oui VBA et les cellules fusionnées ne font pas bon ménage... Essaie comme ça :
Cela signifie que la valeur retenue est dans la première cellule de la plage fusionnée...
Oui VBA et les cellules fusionnées ne font pas bon ménage... Essaie comme ça :
If InStr(1, Range("A" & k)(1).Value, "MC1", vbTextCompare) <> 0 Then
Cela signifie que la valeur retenue est dans la première cellule de la plage fusionnée...
Re,
C'est difficile de t'aider sans le code complet...
Tu utilises la variable k mais on ne sait ni où elle est déclarée ni où elle est initialisée/définie. Si elle est nulle, il est clair que Range("A0") va forcément planter...
C'est difficile de t'aider sans le code complet...
Tu utilises la variable k mais on ne sait ni où elle est déclarée ni où elle est initialisée/définie. Si elle est nulle, il est clair que Range("A0") va forcément planter...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
C'est bon, j'ai fini par résoudre ce problème. Merci quand même pour les tuyaux, ça aidera d'autres jeunes programmeurs !
Le programme me retourne "Erreur d'exécution '1004' : La méthose 'Range' de l'objet '_Global' a échoué.". C'est peut-être parce que je travaille avec des cellules fusionnées ?...