alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007
-
17 janv. 2007 à 16:00
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
20 janv. 2007 à 00:20
Bonjour,
J'ai un petit probleme car encore
debutant.
Voici ce que j'aimerai faire.
J'ai un premier classeur excel
avec 5 onglets donc un est nomme
"parametre"
et
un autre "feuille intervention".Dans celui de parametre,c'est ma base de
donne,j'ai cree un userform pour pouvoir remplir mes colonnes desirees.Et ce que
je n'arrive pas a faire,c'est quand je clic "Valider" sur le bouton de mon
userform,j'aimerai copier l'onglet "feuille intervention" renommer avec la
valeur de la cellule que je viens de creer (exemple : "reception" afficher en B4
alors onglet renommer "reception") et de transferer le nouveau onglet
precedemment renommer sur un autre classeur excel pas forcement ouvert.
Merci
par avance a tous ceux qui m'aiderons
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 17 janv. 2007 à 16:55
Salut,
Voila j'espere que cela peu t'aider, il te reste plus qu' à adapter
'Selectionne une feuille du classeur actif
ActiveWorkbook.Worksheets("feuille intervention").Select
'Changer le nom de la feuille active par la valeur contenu dans B4 de la feuille Parametre
ActiveSheet.Name = ActiveWorkbook.Worksheets("Parametre").Range("B4").Text
'Copier La feuille active sur un autre classeur déjà ouvert appelé Test.xls
'Si déplacer alors Move et non Copy
Call ActiveSheet.Copy(Workbooks("Test.xls").Sheets(1))
'OUvrir un Classeur (Attention une fois ouvert il devient AUSSI activeWorkBook
Call Application.Workbooks.Open("CheminClasseur")
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 17 janv. 2007 à 19:04
Salut,
Merci pour ta solution,en fait c'est pas tout a fait ce que j'aurai voulu faire.Mais c'est un bon debut. .
Je m'explique avec un exemple ,dans mon 1ér userform je possede un bouton "valider",un bouton "annuler",un combobox1 et un textbox1.Une fois que j'ai selectionner mon combobox ("ex : RECEPTION")qui ce trouve dans ma cellule A3 de l'onglet "parametre"
ensuite j'ecris mon nouveau produit dans textbox1 ("ex: ST7") en cliquant sur "VALIDER" un deuxieme userform s'ouvre en me demandant par exemple"Voulez vous creer une nouvelle entreesi je clique sur "oui" alors je copie ma "feuille d'intervention" renommerdans l'exemple (ST7) et va la mettre dans un autre classeur intitule "reception"dans un oglet nomme ST7.
Si tu pouvez encore m'aider sur ce probleme,cela serait super sympa.
Merci par avance.
@+++
Vous n’avez pas trouvé la réponse que vous recherchez ?
jrivet
Messages postés7392Date d'inscriptionmercredi 23 avril 2003StatutMembreDernière intervention 6 avril 201260 18 janv. 2007 à 09:01
Salut,
Désolé mais je crois que tu as tout ce dont tu as besoin avec mes petits exemple.
Mais faut il encore essayer de les mettre en pratiques (No offence)
Sinon tu peux essayer un outils bien pratique dans Excel: L'enregistreur de macro.
Menu Outils => Macro => nouvelle macro. => OK
A partir de la Excel enregistre tout ce que tu fais jusqu'à ce que tu arrête l'enregistreur.
Une fois arreter Excel aura traduit toutes tes actions en code VBA ...
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 19 janv. 2007 à 17:43
Bonsoir,
Voici un premier test :
Private Sub CommandButton2_Click()
Dim comb As String
'ligne pour mettre dans les colonne par rapport aux valeur des colonnes de "A"
Range("A3").Offset(0, ComboBox1.ListIndex + 1).Value = TextBox1.Text
'Saut automatique d'une ligne par colonne pour toutes les colonnes
Range("A3").Offset(0, ComboBox1.ListIndex + 1).Select
If ActiveCell.Offset(1, 0).Value <> "" Then Range("A3").Offset(0, ComboBox1.ListIndex + 1).End(xlDown).Select
ActiveCell.Offset(1, 0).Value = TextBox1.Text
'copie de la feuille intervention et la colle dans la nouvelle feuille xls
Sheets("Interventions").Select
Cells.Select
Selection.Copy
Workbooks.Open ("C:\LOGICIEL MAINTENANCE\Fichiers intervention\reception") 'ouverture du classeur
'ajouter un onglet
Sheets.Add Worksheets(1)
Cells.Select
ActiveSheet.Paste
Sheets("Feuil1").Name = TextBox1.Value
'nom de la feuille en titre
Range("D2:F2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = TextBox1.Value
ActiveWorkbook.Save
ActiveWorkbook.Close
'Effacement des donnees du userform
TextBox1.Text = ""
ComboBox1.Text = ""
End Sub
ça marche mais mon seul probleme ce que dans mes ligne en vert
'copie de la feuille intervention et la colle dans la nouvelle feuille xls
Sheets("Interventions").Select
Cells.Select
Selection.Copy
Workbooks.Open ("C:\Fichiers intervention\reception") 'ouverture du classeur
j'aimerai incorporer mon combobox, c'est a dire, suivant la valeur de mon combobox j'aimerai ouvrir tel ou tel fichier,mais pour l'instant je n'y arrive pas.Si tu pouvez encore m'aiguiller ,ça serait super sympa de ta part.
@++++
alpyna
Messages postés44Date d'inscriptionvendredi 12 janvier 2007StatutMembreDernière intervention 5 février 2007 19 janv. 2007 à 17:43
Bonsoir,
Voici un premier test :
Private Sub CommandButton2_Click()
Dim comb As String
'ligne pour mettre dans les colonne par rapport aux valeur des colonnes de "A"
Range("A3").Offset(0, ComboBox1.ListIndex + 1).Value = TextBox1.Text
'Saut automatique d'une ligne par colonne pour toutes les colonnes
Range("A3").Offset(0, ComboBox1.ListIndex + 1).Select
If ActiveCell.Offset(1, 0).Value <> "" Then Range("A3").Offset(0, ComboBox1.ListIndex + 1).End(xlDown).Select
ActiveCell.Offset(1, 0).Value = TextBox1.Text
'copie de la feuille intervention et la colle dans la nouvelle feuille xls
Sheets("Interventions").Select
Cells.Select
Selection.Copy
Workbooks.Open ("C:\LOGICIEL MAINTENANCE\Fichiers intervention\reception") 'ouverture du classeur
'ajouter un onglet
Sheets.Add Worksheets(1)
Cells.Select
ActiveSheet.Paste
Sheets("Feuil1").Name = TextBox1.Value
'nom de la feuille en titre
Range("D2:F2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = TextBox1.Value
ActiveWorkbook.Save
ActiveWorkbook.Close
'Effacement des donnees du userform
TextBox1.Text = ""
ComboBox1.Text = ""
End Sub
ça marche mais mon seul probleme ce que dans mes ligne en vert
'copie de la feuille intervention et la colle dans la nouvelle feuille xls
Sheets("Interventions").Select
Cells.Select
Selection.Copy
Workbooks.Open ("C:\Fichiers intervention\reception") 'ouverture du classeur
j'aimerai incorporer mon combobox, c'est a dire, suivant la valeur de mon combobox j'aimerai ouvrir tel ou tel fichier,mais pour l'instant je n'y arrive pas.Si tu pouvez encore m'aiguiller ,ça serait super sympa de ta part.
@++++
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 20 janv. 2007 à 00:20
Je ne te suis pas trop...(?)
Tu peux soit laisser le choix à l'utilisateur d'ouvrir le fichier qu'il souhaite avec Application.GetOpenFilename (voir l'aide sur ce mot au besoin)
ou soit mettre des conditions qui détermineront quel fichier doit être ouvert
Dim Fichier as string
Select Case Combobox1.text
Case "XYZ"
Fichier = "C:\Fichiers intervention\reception .xls "
Case "123"
Fichier = "C:\Fichiers intervention\transfert.xls"
............
End Select
Workbooks.Open Fichier
En espérant avoir compris ce que tu cherches à faire...