Plusieurs Macros
Résolu/Fermé
Villette54
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
-
16 août 2013 à 09:04
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - 21 août 2013 à 15:03
Villette54 Messages postés 300 Date d'inscription vendredi 15 mars 2013 Statut Membre Dernière intervention 31 juillet 2018 - 21 août 2013 à 15:03
A voir également:
- Plusieurs Macros
- Macros word - Guide
- My macros - Télécharger - Organisation
- Ez macros - Télécharger - Divers Utilitaires
- Comment activer les macros sur libreoffice ✓ - Forum LibreOffice / OpenOffice
- Activer les macros excel android ✓ - Forum Excel
9 réponses
f894009
Messages postés
17192
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2024
1 708
17 août 2013 à 08:25
17 août 2013 à 08:25
Bonjour,
'1. J'aimerais affecter une plage de données à une ComboBox pour faire une liste déroulante.
'methode simple
'sur feuille da calcul
ComboBox1.List = Worksheets("feuil1").Range("A1:A10").Value
'Userform
ComboBox1.List = Worksheets("feuil1").Range("A1:A10").Value
'ou
ComboBox1.RowSource = Worksheets("feuil1").Range("A1:A10").Address
'2. J'aimerais que lors de la fermeture de mon classeur, le verrouillage de la feuille par mot de passe se fasse automatiquement.
'3. J'aimerais exporter un onglet d'un fichier Excel vers un autre mais en copiant sous forme de valeur uniquement.
A+
'1. J'aimerais affecter une plage de données à une ComboBox pour faire une liste déroulante.
'methode simple
'sur feuille da calcul
ComboBox1.List = Worksheets("feuil1").Range("A1:A10").Value
'Userform
ComboBox1.List = Worksheets("feuil1").Range("A1:A10").Value
'ou
ComboBox1.RowSource = Worksheets("feuil1").Range("A1:A10").Address
'2. J'aimerais que lors de la fermeture de mon classeur, le verrouillage de la feuille par mot de passe se fasse automatiquement.
Private Sub Workbook_BeforeClose(Cancel As Boolean) 'l'enregistreur de macro ne donne pas le mot de passe 'Adaptez le nom de la feuille et le mot de passe Worksheets("feuil1").Protect Password:="toto", DrawingObjects:=True, Contents:=True, Scenarios:=True Worksheets("feuil1").EnableSelection = xlNoSelection End Sub
'3. J'aimerais exporter un onglet d'un fichier Excel vers un autre mais en copiant sous forme de valeur uniquement.
Sub Macro3() 'fait avec l'enregistreur de macro Sheets("Feuil1").Select Cells.Select Application.CutCopyMode = False Selection.Copy Windows("Classeur2").Activate Sheets("Feuil1").Select Range("A1").Select ActiveSheet.Paste End Sub
A+
Villette54
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
28
19 août 2013 à 10:02
19 août 2013 à 10:02
Bonjour,
Merci pour les réponses aux points 1 et 2 qui correspondent parfaitement à mes attentes.
En revanche pour le point 3, un soucis se pose : la macro proposée copie/colle l'intégralité de la feuille (formule y compris) hors je souhaite que seulement les valeurs soient copiées (en effet certaines formules font référence à d'autre page du classeur d'origine cela pose donc des problèmes lors de la copie.
Pour détailler un peu plus je souhaiterai lors du click sur mon bouton :
1. Création d'un nouveau classeur Excel nommé "123"
2. Copie de la feuille "xxx" du classeur d'origine
3. Collage en valeur uniquement (afin de ne pas retrouver les formules) sur le nouveau classeur
4. Enregistrement du nouveau classeur à l'adresse suivante : "C:\Documents\My Documents" (par exemple)
5. Fermeture du nouveau classeur.
6. Retour sur la page ou j'ai cliqué sur le bouton et fin de la macro.
En espérant que ma demande soit réalisable. Merci d'avance
Merci pour les réponses aux points 1 et 2 qui correspondent parfaitement à mes attentes.
En revanche pour le point 3, un soucis se pose : la macro proposée copie/colle l'intégralité de la feuille (formule y compris) hors je souhaite que seulement les valeurs soient copiées (en effet certaines formules font référence à d'autre page du classeur d'origine cela pose donc des problèmes lors de la copie.
Pour détailler un peu plus je souhaiterai lors du click sur mon bouton :
1. Création d'un nouveau classeur Excel nommé "123"
2. Copie de la feuille "xxx" du classeur d'origine
3. Collage en valeur uniquement (afin de ne pas retrouver les formules) sur le nouveau classeur
4. Enregistrement du nouveau classeur à l'adresse suivante : "C:\Documents\My Documents" (par exemple)
5. Fermeture du nouveau classeur.
6. Retour sur la page ou j'ai cliqué sur le bouton et fin de la macro.
En espérant que ma demande soit réalisable. Merci d'avance
f894009
Messages postés
17192
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2024
1 708
19 août 2013 à 11:04
19 août 2013 à 11:04
Bonjour,
Pour le 3, ai pas mis le bon exemple.........
Je vous fais cela avec votre derniere demande.
A+
Pour le 3, ai pas mis le bon exemple.........
Je vous fais cela avec votre derniere demande.
A+
f894009
Messages postés
17192
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2024
1 708
19 août 2013 à 11:20
19 août 2013 à 11:20
Re,
fait avec enregistreur de macro a 99%, adaptez le chemin et nom de classeurs
fait avec enregistreur de macro a 99%, adaptez le chemin et nom de classeurs
Sub Bouton1_Clic() Application.ScreenUpdating = False Workbooks.Add newclass = ActiveWorkbook.Name 'mettre le votre du classeur Windows("Classeur1").Activate Cells.Select Selection.Copy 'nouveau classeur Windows(newclass).Activate Sheets("Feuil1").Select 'copie valeurs Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'copie format (pour les dates entre autre) Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False 'sauvegarde du nouveau fichier: mettre votre chemin et nom de fichier ActiveWorkbook.SaveAs Filename:="C:\Users\SWF\Documents\Classeur2.xls", _ FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False ActiveWorkbook.Close 'mettre le votre du classeur Windows("Classeur1").Activate Range("A1").Select Application.ScreenUpdating = True End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Villette54
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
28
20 août 2013 à 08:46
20 août 2013 à 08:46
Bonjour,
Après quelques petits ajustement, votre code fonctionne parfaitement et je vous en remercie.
Une seule chose me bloque encore, j'aimerais sauvegarder mes fichiers non pas en Excel 2003, mais en 2010.
Je pense qu'il faut changer cette partie du code, mais je ne sais pas quoi mettre. Pouvez-vous m'aider encore un peu ?
Merci d'avance
Après quelques petits ajustement, votre code fonctionne parfaitement et je vous en remercie.
Une seule chose me bloque encore, j'aimerais sauvegarder mes fichiers non pas en Excel 2003, mais en 2010.
Je pense qu'il faut changer cette partie du code, mais je ne sais pas quoi mettre. Pouvez-vous m'aider encore un peu ?
ActiveWorkbook.SaveAs Filename:="C:\Users\SWF\Documents\Classeur2.xls", _ FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _ ReadOnlyRecommended:=False, CreateBackup:=False
Merci d'avance
f894009
Messages postés
17192
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2024
1 708
21 août 2013 à 10:02
21 août 2013 à 10:02
Bonjour,
avec quel excel travaillez-vous ?????
A+
avec quel excel travaillez-vous ?????
A+
Villette54
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
28
21 août 2013 à 14:20
21 août 2013 à 14:20
Bonjour,
Je travail avec Excel 2010.
Je travail avec Excel 2010.
f894009
Messages postés
17192
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2024
1 708
21 août 2013 à 14:49
21 août 2013 à 14:49
Re,
vous pouvez utiliser ceci:
ActiveWorkbook.SaveAs Filename:="C:\Users\SWF\Documents\Classeur2.xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
A+
vous pouvez utiliser ceci:
ActiveWorkbook.SaveAs Filename:="C:\Users\SWF\Documents\Classeur2.xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
A+
Villette54
Messages postés
300
Date d'inscription
vendredi 15 mars 2013
Statut
Membre
Dernière intervention
31 juillet 2018
28
21 août 2013 à 15:03
21 août 2013 à 15:03
Cela fonctionne parfaitement,
Je vous remercie pour votre aide !
Je passe en résolu, bonne journée.
Je vous remercie pour votre aide !
Je passe en résolu, bonne journée.