OVH Cloud OVH Cloud

Différence macro et procédure

1 réponse
Avatar
DéGé
Bonjour à tous,

Je souhaite sélectionner une plage de cellules à partir du classeur
MonfichierDépart pour
copier dans une feuille d'un autre classeur MonClasseurArrivée.

Lorsque j' éxécute Macro1 depuis MonClasseurArrivée, ceci fonctionne.

Sub Macro1()
Workbooks.Open Filename:="D:\MonfichierDepart.xls"
Range("A2").CurrentRegion.Offset(1).Resize(Range("A2").CurrentRegion.Rows.Count - 2).SelectEnd SubCe code associé au bouton 1 depuis MonClasseurArrivée ne fonctionne pasPrivate Sub CommandButton1_Click() Workbooks.Open Filename:="D:\MonfichierDepart.xls" Range("A2").CurrentRegion.Offset(1).Resize(Range("A2").CurrentRegion.Rows.Count - 2).SelectEnd SubMerci de votre aide.DG

1 réponse

Avatar
MichDenis
Essaie ceci : Tu dois adapter le nom de la feuille
du classeur où sont tes données dans le classeur que
la procédure ouvre :
With .Worksheets("NomDeLaFeuilleDésirée")

'------------------------------------
Private Sub CommandButton1_Click()
Dim Wk As Workbook
Dim Fichier As String
Fichier = "D:MonfichierDepart.xls"
If Dir(Fichier) <> "" Then
Set Wk = Workbooks.Open(Fichier)
With Wk
With .Worksheets("NomDeLaFeuilleDésirée")
.Select
On Error Resume Next
'Une erreur est générée par exemple si la
'plage est vide -> C'est le pourquoi de
'l'utilité de On error resume next
.Range("A2").CurrentRegion.Offset(1).Resize _
(.Range("A2").CurrentRegion.Rows.Count - 2).Select
End With
End With
Else
MsgBox "Impossible de trouver ce " & vbCrLf & _
"fichier à l'endroit mentionné."
End If
End Sub
'------------------------------------



"DéGé" a écrit dans le message de news: 45d6cd4c$0$5083$
Bonjour à tous,

Je souhaite sélectionner une plage de cellules à partir du classeur
MonfichierDépart pour
copier dans une feuille d'un autre classeur MonClasseurArrivée.

Lorsque j' éxécute Macro1 depuis MonClasseurArrivée, ceci fonctionne.

Sub Macro1()
Workbooks.Open Filename:="D:MonfichierDepart.xls"
Range("A2").CurrentRegion.Offset(1).Resize(Range("A2").CurrentRegion.Rows.Count - 2).SelectEnd
SubCe code associé au bouton 1 depuis MonClasseurArrivée ne fonctionne pasPrivate Sub
CommandButton1_Click() Workbooks.Open Filename:="D:MonfichierDepart.xls"
Range("A2").CurrentRegion.Offset(1).Resize(Range("A2").CurrentRegion.Rows.Count - 2).SelectEnd
SubMerci de votre aide.DG