![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Futur Membre du Club
![]() Date d'inscription: juillet 2008
Messages: 34
|
Bonjour à tous,
J'ai un combobox sur un userform avec 16 items. chaque item correspond au nom d'une feuille dans thisworkbook. J'aimerai que lorqu'un item est choisi qu'un nouveau classeur s'ouvre et que l'on copie toute la feuille(comboBox.text) de thisworkbook dans une nouvelle feuille(ComboBox.text) du nouveau classeur. J'ai écris le code suivant mais à chque item choisi un nouveau classeur s'ouvre. Code :
Private Sub ComboBox1_Change() Dim NewSheet As Variant ThisWorkbook.Worksheets(ComboBox1.Text).UsedRange.Copy Set NewSheet = Workbooks.Add NewSheet.ActiveSheet.Paste ActiveSheet.Name = ComboBox1 [A1].Select End Sub Merci pour votre aide |
|
|
|
|
|
#2 (permalink) |
![]() Date d'inscription: février 2008
Localisation: Bxl
Âge: 45
Messages: 2 667
|
Bonjour,
Tu peux essayer comme ceci : Code :
'variables à déclarer en tête des procédures Dim NbrFeuil As Byte Dim WbNew As Workbook, WbOri As Workbook Code :
Private Sub ComboBox1_Change() NbrFeuil = NbrFeuil + 1 If NbrFeuil = 1 Then 'si c'est la première sélection on crée un nouveau classeur avec la feuille sélectionnée Set WbOri = ThisWorkbook Sheets(Me.ComboBox1.Text).Copy Set WbNew = ActiveWorkbook Else 'sinon on ajoute les feuilles sélectionnées au classeur créé WbOri.Sheets(Me.ComboBox1.Text).Copy After:=WbNew.Sheets(Sheets.Count) End If End Sub Code :
Private Sub CommandButton1_Click() Unload Me NbrFeuil = 0 '<-- remet le compteur à 0 pour la création d'un nouveau classeur lors de la prochaine utilisation End Sub
__________________
LES FAQ OFFICE - LES COURS OFFICE - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA Prenez quelques secondes pour lire ceci : Aide sur l'utilisation des boutons du forum Hormis pour me demander mon numéro de compte afin d'y effectuer un versement, évitez de m'envoyer vos questions par MP, merci d'avance En posant une question on risque d'avoir l'air idiot cinq minutes. En n'en posant pas, on risque de le rester toute sa vie (proverbe chinois) |
|
|
|
![]() |
![]() |
||
utilisation Items Combobox
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|