Définir 1 Chaine de caractere / classeur ouvert

  • Initiateur de la discussion {:'-(
  • Date de début
?

{:'-(

Guest
bonjour,
je voudrais choisir une instruction en fonction du nom d'un fichier, et a partir d'un projet xla:
nom de projet xla : test.xla

Si mon nom de classeur ouvert ( different d'un classeur activé !!! ) commence par "Archiv~" .xls alors exécutez la macro " marche"; sinon exécutez la macro "fin"

Voila ma tentative de code ( ne sachant pas définir un classeur ouvert, je definis un classeur actif ) :

Dans un module du xla, j'execute pas-a-pas cette fonction (qui plante!!):

Sub verif()
If ActiveWorkbook.Name = "Archiv %" Then
marche /* definie */
Else
fin /* definie */
End If
End verif()

d'avance "Merci beaucoup"
 
S

STéphane

Guest
bonjour

tu peux utiliser instr
If InStr(1, ActiveWorkbook.Name, "Classeur", vbBinaryCompare) > 0 Then MsgBox "oui"

tu peux aussi boucler sur chaque classeur, ton classeur peut être présent mais pas forcément actif

for each wb in workbooks
if instr(1,wb.name, .....)
next wb

attention le paramètre vbBinaryCompare est contraignant, excel va prêter attention à la casse ou aux accents en effectuant sa recherche

bye
stephane
 

Discussions similaires

Statistiques des forums

Discussions
312 489
Messages
2 088 870
Membres
103 980
dernier inscrit
grandmasterflash38