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
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
A voir également:
- Besoin d aide sur modif de macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Suivi de modification word - Guide
- Jitbit macro recorder - Télécharger - Confidentialité
- Macro logiciel - Télécharger - Organisation
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
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")
Workbooks("Classeur1").Worksheets("Feuille1)
Workbooks("Classeur2").Worksheets("toto")
Rq : Les 2 classeurs doivent être ouverts (Workbooks.Open filename:="Classeur1.xls")
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
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
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
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
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...
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...