Besoin d aide sur modif de macro

Fermé
oasisjf Messages postés 30 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 15 mai 2008 - 22 janv. 2008 à 10:50
dandypunk Messages postés 831 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 11 septembre 2011 - 23 janv. 2008 à 10:33
Bonjour,

Jusqu'a présent je copiais différentes données sur ma feuille 1 de mon classeur1 . Aujourd'hui je souhaite toujours copier ses données mais sur un autre Classeur2, feuille toto.

A savoir que le classeur2 est déjà ouvert.

Dim Nom As String
Dim NbDonnée As Integer
Dim Nb As Integer, Y As Integer
Dim Element_Select As Boolean
Dim X As Integer

Sheets("Feuil1").Select


Vous remerciant par avance

oasisjf
A voir également:

3 réponses

dandypunk Messages postés 831 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 11 septembre 2011 83
22 janv. 2008 à 12:08
Essayes de passer au niveau Workbook

Workbooks("Classeur1").Worksheets("Feuille1)
Workbooks("Classeur2").Worksheets("toto")

Rq : Les 2 classeurs doivent être ouverts (Workbooks.Open filename:="Classeur1.xls")
0
oasisjf Messages postés 30 Date d'inscription jeudi 29 novembre 2007 Statut Membre Dernière intervention 15 mai 2008
22 janv. 2008 à 12:42
Bonjour dandypunk,

je pense qu'il faut absolument que je te mette ma macro donc :

Private Sub CommandButton5_Click() 'Transfert vers...
Dim Nom As String
Dim NbDonnée As Integer
Dim Nb As Integer, Y As Integer
Dim Element_Select As Boolean
Dim X As Integer

'Application.ScreenUpdating = False 'ne pas voir ce qui se passe à l'écran
Sheets("Feuil1").Select ' selection de la feuille ou vont les données
NbDonnée = Range("A7").Value
Element_Select = False
Nb = Sheets("Clients").Range("AQ3").Value
X = 4
If Nb = 0 Then Exit Sub 'si bibli vide

'------------------ Transfert -------------
For i = 0 To Nb - 1
If UserForm12.ListBox1.Selected(i) = True Then
Element_Select = True
'Range("B8").Value = UserForm12.TextBox2.Value
Range("D4").Value = UserForm12.TextBox2.Value & " " & UserForm12.TextBox3.Value
'ActiveWorkbook.Sheet("devis rapide LTSC (version 1)").Range("D4").Value = UserForm12.TextBox2.Value & " " & UserForm12.TextBox3.Value
'ActiveWorkbook.Sheet("Devis Facture Rapide").Range("D4").Value = UserForm12.TextBox2.Value & " " & UserForm12.TextBox3.Value
Range("D5").Value = UserForm12.TextBox4.Value
Range("D6").Value = UserForm12.TextBox5.Value

End If
Next

'----------- DETECTION D'ERREUR (PAS DE SELECTION)---------------
If Element_Select = False Then
MsgBox "vous n'avez rien sélectionné: fin du programme", , "FACTURE DEVIS"
Exit Sub
End If
Application.CutCopyMode = False ' pour effacer le pressepapier sinon j'ai le message de trop plein quand je ferme excel
End Sub


cette macro fonctionne à parfaitement, si tu veux dans un userform je selectionne des textbox puis je les copie directement, et donc aujourd'hui je veux toujours les copier mais vers un autre classeur déjà ouvert

merci par avance oasis_1
0
dandypunk Messages postés 831 Date d'inscription jeudi 3 janvier 2008 Statut Membre Dernière intervention 11 septembre 2011 83
23 janv. 2008 à 10:33
Je cherche mais pour l'instant, je travaille en dégradé. (Réinstallation bécane principale (3 OS+ 3 AGL avec MAJ) 15 jours avant d'avoir Office 2000)

Quelques indications toutefois :

-Copie ton code dans PERSO.XLS sous le nom CopieFactureDevis (par exemple)
-Crée un .XLT avec un bouton
-Code du bouton :
Private Sub CommandButton1_Click()
CopieFactureDevis
End Sub


Dans ton code ajoute (code à la volée, non testé cf plus haut)

Dim wbSource As WorkBook 'Classeur d'origine
Dim wbDest As Worbook 'Classeur de destination

SET wbDest =ThisWorkBook 'Classeur en cours

Workbooks.open filename := "Source.xls"
SET wbSource=Workbooks("Source.xls")

NbDonnées=wbSource.Workseets(1).Range("A7").Value
Element_Select=FALSE
Nb=wbSource.WorkSheets("Clients").Range("AQ3").Value

wbDest.WorkSheets("Feuil").Select


etc...
0