Pascal126
Nouveau membre
Bonjour,
J'ai vu qu'il y a deja eu quelques posts sur ce sujet mais aucune des reponses que j'ai pu lire ne semble correspondre a mon probleme.
Voici mon "cas":
J'ai un fichier Master ouvert dans Excel qui me montre les depenses de mes centres de cout par ligne (j'ai 80 lignes) ainsi que le budget correspondant et l'ecart entre le reel et le budget. Dans ce fichier, je peux choisir un mois de l'annee 2006 ainsi qu'un centre de cout. Suivant mon choix, ma macro va chercher dans un fichier intitule Targets qui se trouve dans le meme repertoire le budget correspondant au mois pour chacune des 80 lignes.
J'ai ouvert le fichier Targets par l'instruction Open tName For Input as #1 (ou tName comprend le chemin d'acces complet du fichier Targets).
Jusque la, pas de problemes, c'est apres que cela se complique. Je veux faire une recherche dans ce fichier pour trouver la bonne worksheet (j'ai une worksheet par centre de cout). J'ai donc ecrit (note: toutes les variables ont ete definies prealablement of course):
' Identifies the correct tab in the file
myWSName = myCostCenter & " " & myPeriod1
myTargetsTabs = Workbooks(tName).Worksheets.Count
For t = 1 To myTargetsTabs
If Workbooks(myTargets).Worksheets(t).Name = myWSName Then
Workbooks(myTargets).Worksheets(t).Activate
c = 1
Do Until ActiveSheet.Cells(6, c).Value = myMonth
c = c + 1
Loop
ActiveSheet.Cells(6, c).Select
ActiveCell.Offset(5, 0).Select
ActiveSheet.Range(Selection, Selection.End(xlDown)).Copy
mySGA.Activate
Range("F18").Select
ActiveCell.PasteSpecial (xlPasteValues)
Exit For
End If
Next t
Ca marche impeccable quand mon fichier tName est ouvert dans Excel. Si j'essaie de faire tourner la macro avec le fichier ferme, l'instruction Open... fonctionne bien mais la macro plante a la ligne myTargetsTabs = Workbooks(tName).Worksheets.Count ou j'obtiens l'erreur "Subscript out of Range". Pour info aussi, j'ai defini tName comme une String, je pense que le probleme pourrait venir de la, mais je ne vois pas comment faire une reference a ce fichier autrement. Merci d'avance pour votre aide. J'espere avoir ete clair dans mes explications, n'hesitez pas a me demander si je me suis mal explique.
Pascal
J'ai vu qu'il y a deja eu quelques posts sur ce sujet mais aucune des reponses que j'ai pu lire ne semble correspondre a mon probleme.
Voici mon "cas":
J'ai un fichier Master ouvert dans Excel qui me montre les depenses de mes centres de cout par ligne (j'ai 80 lignes) ainsi que le budget correspondant et l'ecart entre le reel et le budget. Dans ce fichier, je peux choisir un mois de l'annee 2006 ainsi qu'un centre de cout. Suivant mon choix, ma macro va chercher dans un fichier intitule Targets qui se trouve dans le meme repertoire le budget correspondant au mois pour chacune des 80 lignes.
J'ai ouvert le fichier Targets par l'instruction Open tName For Input as #1 (ou tName comprend le chemin d'acces complet du fichier Targets).
Jusque la, pas de problemes, c'est apres que cela se complique. Je veux faire une recherche dans ce fichier pour trouver la bonne worksheet (j'ai une worksheet par centre de cout). J'ai donc ecrit (note: toutes les variables ont ete definies prealablement of course):
' Identifies the correct tab in the file
myWSName = myCostCenter & " " & myPeriod1
myTargetsTabs = Workbooks(tName).Worksheets.Count
For t = 1 To myTargetsTabs
If Workbooks(myTargets).Worksheets(t).Name = myWSName Then
Workbooks(myTargets).Worksheets(t).Activate
c = 1
Do Until ActiveSheet.Cells(6, c).Value = myMonth
c = c + 1
Loop
ActiveSheet.Cells(6, c).Select
ActiveCell.Offset(5, 0).Select
ActiveSheet.Range(Selection, Selection.End(xlDown)).Copy
mySGA.Activate
Range("F18").Select
ActiveCell.PasteSpecial (xlPasteValues)
Exit For
End If
Next t
Ca marche impeccable quand mon fichier tName est ouvert dans Excel. Si j'essaie de faire tourner la macro avec le fichier ferme, l'instruction Open... fonctionne bien mais la macro plante a la ligne myTargetsTabs = Workbooks(tName).Worksheets.Count ou j'obtiens l'erreur "Subscript out of Range". Pour info aussi, j'ai defini tName comme une String, je pense que le probleme pourrait venir de la, mais je ne vois pas comment faire une reference a ce fichier autrement. Merci d'avance pour votre aide. J'espere avoir ete clair dans mes explications, n'hesitez pas a me demander si je me suis mal explique.
Pascal