Sub qui ignore des instructions
Bonjour a tous !
J'ai essaye de creer une petite macro qui permet de copier une plage provenant d'un autre fichier et de la coller dans la deuxieme feuille du fichier de la macro. Malheureusement, j'ai un petit probleme...
Je ne comprends pas pourquoi ceci ne fontionne pas:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| Sub copyData()
Dim ws As Worksheet
Dim copyRange As Range
Dim startingCell, lastCell As Range
Set ws = ActiveWorkbook.Sheets(2)
'select file
On Error Resume Next
wbName = Application.GetOpenFilename(FileFilter:="(*.xls* ),*.slsx" _
, Title:="Select workbook")
If wbName = False Then
Exit Sub
End If
Workbooks.Open (wbName)
'Selecting range to copy: from A5 to last cell column - 2 (ex.: last cell is D7, we will copy from A5 to B7)
Set lastCell = Cells(100000, 1).End(xlUp)
Set lastCell = Range(lastCell.Address).End(xlToRight).Offset(0, -2)
Set startingCell = Range("A5")
Set copyRange = Range(startingCell.Address, lastCell.Address)
copyRange.Copy ws.Range("A1")
exitSub:
ActiveWorkbook.Close
'ws.Cells.ClearFormats
ws.Columns.EntireColumn.AutoFit
End Sub |
alors que ceci fontionne (meme methode de copie sauf que pas sur un autre fichier mais sur la feuille active):
Code:
1 2 3 4 5 6 7 8 9 10
| Sub test()
Set ws = ActiveWorkbook.Sheets(2)
Set lastCell = Cells(100000, 1).End(xlUp)
Set lastCell = Range(lastCell.Address).End(xlToRight).Offset(0, -2)
Set startingCell = Range("A5")
Set copyRange = Range(startingCell.Address, lastCell.Address)
copyRange.Copy ws.Range("A1")
End Sub |
Dans le premier code j'ai enleve toute gestion d'erreur pour essayer de comprendre, visiblement le programme ignore juste toutes les instructions concernant lastCell, cad j'ai essaye de mettre des Msgbox lastCell.Value et ca ne m'affichait rien (pas une msgbox vide, non, juste pas de msgbox du tout), alors que ca fonctionne niquel avec un msgbox startingCell.Value. Et le programme continuait jusqu'a la fin, il ne m'envoyait aucun message d'erreur.
Pourrait-on m'eclairer s'il vous plait? :)
Merci d'avance !
(et desole mais je n'ai pas d'accents sur mon clavier !)