Insertion fenêtre de choix dans une macro
Résolu/Fermé
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
-
24 nov. 2020 à 12:31
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 25 nov. 2020 à 11:26
cs_Le Pivert Messages postés 7883 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 18 mars 2023 - 25 nov. 2020 à 11:26
A voir également:
- Insertion fenêtre de choix dans une macro
- Excel liste déroulante de choix - Guide
- Macro logiciel - Télécharger - Organisation
- Lancer une macro dans une macro - Astuces et Solutions
- Macro recorder - Télécharger - Confidentialité
- Macro Recorder - Télécharger - Divers Utilitaires
4 réponses
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
1 326
24 nov. 2020 à 13:21
24 nov. 2020 à 13:21
bonjour,
je pense que le plus simple serait que tu sélectionnes une des cellules de la liste, et que la macro travaille uniquement pour cette ligne.
je pense que le plus simple serait que tu sélectionnes une des cellules de la liste, et que la macro travaille uniquement pour cette ligne.
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
24 nov. 2020 à 13:36
24 nov. 2020 à 13:36
Bonjour,
Oui c'est le but en passant par une fenêtre de choix reportant la liste.
La finalité est de lancer la nouvelle macro, On sélectionne la cellule via une fenêtre (qui affichera la liste) et que l'extraction se lance.
Oui c'est le but en passant par une fenêtre de choix reportant la liste.
La finalité est de lancer la nouvelle macro, On sélectionne la cellule via une fenêtre (qui affichera la liste) et que l'extraction se lance.
yg_be
Messages postés
21303
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
18 mars 2023
1 326
24 nov. 2020 à 13:42
24 nov. 2020 à 13:42
Je suggère de d'abord faire la sélection, puis de lancer la nouvelle macro.
La macro observera ce qui est sélectionné, et agira en conséquence.
La macro observera ce qui est sélectionné, et agira en conséquence.
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
24 nov. 2020 à 14:10
24 nov. 2020 à 14:10
Si on fait dans l'ordre que tu proposes, il faudra alors 2 macros, une pour la sélection et une pour l'extraction. N'est pas plus pratique de tout regrouper ?
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
24 nov. 2020 à 14:20
24 nov. 2020 à 14:20
Bonjour,
se mettre sur la feuille où se trouve les chemins des classeurs et faire Alt F11 pour accéder à l'éditeur.
Coller ce code qui se déclenchera au double clic dans la colonne B:
Voilà
se mettre sur la feuille où se trouve les chemins des classeurs et faire Alt F11 pour accéder à l'éditeur.
Coller ce code qui se déclenchera au double clic dans la colonne B:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then
Dim Chemin As String, Fichier As String, Extraction As String, Résumé As String
Dim classeurProj As Workbook, classeurDestination As Workbook
If Target.Value = "" Then Exit Sub
Chemin = Range("b" & Target.Row)
Fichier = Range("c" & Target.Row)
Extraction = Range("d" & Target.Row)
Résumé = Range("a" & Target.Row)
Set classeurProj = Application.Workbooks.Open(Chemin & Fichier, , True) 'Ouverture du fichier
Set classeurDestination = ThisWorkbook
With Worksheets("Materiels")
If .FilterMode = True Then .ShowAllData 'Suppression des filtres existants
End With
classeurProj.Sheets("Materiels").Cells.Copy classeurDestination.Sheets(Extraction).Range("A1") 'Extraction des informations dans sa feuille spécifique
classeurProj.Close False
End If
End Sub
Voilà
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
24 nov. 2020 à 14:38
24 nov. 2020 à 14:38
Bonjour,
J'ai suivi tes indications et ça ne fonctionne pas du tout. (Même pas d'ouverture de fichier)
J'ai suivi tes indications et ça ne fonctionne pas du tout. (Même pas d'ouverture de fichier)
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
>
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
24 nov. 2020 à 14:59
24 nov. 2020 à 14:59
Voir ceci pour l'ouverture d'un classeur
https://docs.microsoft.com/fr-FR/office/vba/api/Excel.Workbooks.Open
https://docs.microsoft.com/fr-FR/office/vba/api/Excel.Workbooks.Open
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
>
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
Modifié le 24 nov. 2020 à 15:48
Modifié le 24 nov. 2020 à 15:48
Je comprends pas ta réponse.
Ma macro de base fonctionne très bien avec cette écriture. Et il n'y a pas d'erreur.
Ma macro de base fonctionne très bien avec cette écriture. Et il n'y a pas d'erreur.
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
724
>
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
24 nov. 2020 à 16:36
24 nov. 2020 à 16:36
Cela fonctionne chez moi. Vérifie le chemin , il doit manquer des éléments
essai ceci:
essai ceci:
Sub test()
Dim Chemin As String, Fichier As String
Dim classeurProj As Workbook, classeurDestination As Workbook
Chemin = Range("b5")
Fichier = Range("c5")
Set classeurProj = Application.Workbooks.Open(Chemin & Fichier, , True) '
End Sub
Inconnu404
Messages postés
15
Date d'inscription
lundi 12 octobre 2020
Statut
Membre
Dernière intervention
26 novembre 2020
>
cs_Le Pivert
Messages postés
7883
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
18 mars 2023
25 nov. 2020 à 08:01
25 nov. 2020 à 08:01
Vérification de la macro Test : ça fonctionne et j'ouvre bien mon fichier.
En comparant avec ta première macro, aucune différence.
Le problème ne viendrait t-il pas de cette commande ?
En comparant avec ta première macro, aucune différence.
Le problème ne viendrait t-il pas de cette commande ?
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("B:B")) Is Nothing Then