Indice en dehors de la plage d'erreur dans ce script VBA Excel

Je voudrais copier des données à partir d'un fichier CSV dans une feuille de calcul Excel. Il y a 11 .les fichiers csv. Pour l'instant j'ai ceci (c'est une version modifiée d'un post précédent):

Sub importData()   
  Dim filenum(0 To 10) As Long
  filenum(0) = 052
  filenum(1) = 060
  filenum(2) = 064
  filenum(3) = 068
  filenum(4) = 070
  filenum(5) = 072
  filenum(6) = 074
  filenum(7) = 076
  filenum(8) = 178
  filenum(9) = 180
  filenum(10) = 182

  Dim sh1 As Worksheet
  On Error GoTo my_handler

  For lngPosition = LBound(filenum) To UBound(filenum)
    'Windows(filenum(lngPosition) & ".csv").Activate
    Workbooks.Add(filenum(lngPosition) & ".csv").Activate
Range("A1").Select
    Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select
    Selection.Copy
    Windows("30_graphs_w_Macro.xlsm").Activate
    Set sh1 = Worksheets(filenum(lngPosition)).Activate
    Range("A69").Paste
    Range("A69").Select

  Next lngPositionlngPositionlngPosition

my_handler:
  MsgBox "All done."
  Exit Sub
End Sub

Ce code me donne un indice en dehors de la plage d'erreur sur la ligne:

Set sh1 = Worksheets(filenum(lngPosition)).Activate
  • La première supprimer la .Activate ligne. Si ce n'est pas l'aider à mettre un MsgBox filenum(lngPosition) avant la Set sh1.. ligne et voir ce que le MsgBox dit. Assurez-vous d'avoir une feuille avec exactement le même nom.
  • OK.. je viens de voir ça.. le fichier 052.csv s'ouvre.. et puis je reçois le message il est hors de portée.. Une chose que j'ai remarqué, c'est que le fichier s'ouvre comme un [lecture seule] fichier. Quand je l'ouvre manuellement, il ouvre noramlly
  • Désolé de ne pas voir votre commentaire. Laissez-moi savoir si vous souhaitez poster une réponse et je vais supprimer ma réponse.
  • pas de soucis, c'est pourquoi il est juste un commentaire, j'etais en train de taper ma réponse alors que vous avez ajouté les vôtres haha alors maintenant, nous avons 2 réponses différentes en fait, bien que correct
InformationsquelleAutor user2883071 | 2013-11-06