Source ComboBox & Classeur fermé
Résolu
Eladaz
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
Eladaz Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Eladaz Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bjr à tous,
J'espère ne pas me tromper de forum.
J'essaye de faire fonctionner un ComboBox avec un classeur excel fermé. C'est à dire que la source (base de donnée) est dans un classeur fermé. Est ce que cela est possible ?
Voici les deux solutions que j'ai tenté sans succès:
(Pas la peine de préciser que je suis super débutant..., vous devriez vous en rendre compte avec mon code...):
Sol 1:
Private Sub UserForm_Initialize()
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
CheminBd = "'C:\Users\...\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
ComboBank.List = CheminCompletBank
End Sub
Sol 2:
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
CheminBd = "'C:\Users\...\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
With CheminCompletBank
i = 2
Do While CheminCompletBank.Cells(i, 1) <> ""
Me.ComboBank.AddItem Cells(i, 1)
i = i + 1
Loop
End With
End Sub
Voilà... Merci par avance pour votre aide....
J'espère ne pas me tromper de forum.
J'essaye de faire fonctionner un ComboBox avec un classeur excel fermé. C'est à dire que la source (base de donnée) est dans un classeur fermé. Est ce que cela est possible ?
Voici les deux solutions que j'ai tenté sans succès:
(Pas la peine de préciser que je suis super débutant..., vous devriez vous en rendre compte avec mon code...):
Sol 1:
Private Sub UserForm_Initialize()
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
CheminBd = "'C:\Users\...\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
ComboBank.List = CheminCompletBank
End Sub
Sol 2:
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
CheminBd = "'C:\Users\...\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
With CheminCompletBank
i = 2
Do While CheminCompletBank.Cells(i, 1) <> ""
Me.ComboBank.AddItem Cells(i, 1)
i = i + 1
Loop
End With
End Sub
Voilà... Merci par avance pour votre aide....
A voir également:
- Source ComboBox & Classeur fermé
- Rouvrir onglet fermé chrome - Guide
- Application se ferme toute seule android - Guide
- Coco.fr fermé - Accueil - Réseaux sociaux
- Utiliser pc portable fermé - Guide
- Uptobox fermé - Accueil - Services en ligne
8 réponses
Bonjour,
Quel message d'erreur recevez-vous pour chacun des codes ?
Pourquoi les données de la liste déroulante ne peuvent pas être dans le même classeur ?
Note : cette instruction
derlign = Range("A1").End(xlDown).Row
se rapporte à la feuille active du classeur actif et non pas à celle du classeur fermer.... référence incorrect dans la ligne :
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
Salutations.
Le Pingou
Quel message d'erreur recevez-vous pour chacun des codes ?
Pourquoi les données de la liste déroulante ne peuvent pas être dans le même classeur ?
Note : cette instruction
derlign = Range("A1").End(xlDown).Row
se rapporte à la feuille active du classeur actif et non pas à celle du classeur fermer.... référence incorrect dans la ligne :
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
Salutations.
Le Pingou
Bjr Le Pingou,
Et merci pour ta réponse...
Alors:
Sol1: Msg erreur: "Erreur d'execution '1004'. La methode 'Range de l'objet '_Global' a échoué.
Sol2: Msg errur: "Erreur d'execution '424': Objet requis
Le pingouin:
"Pourquoi les données de la liste déroulante ne peuvent pas être dans le même classeur ? "
Eladaz:
"L'idée est de travailler avec un classeur excel qui va me servir de base de donnée mais je n'ai aucune utilité de l'ouvrir, j'ai juste besoin des données pour nourrir mon UserForm et travailler sur un autre classeur excel. Le projet global consiste à récupérer des données sur le classeur (base de données fermé) grâce à un UserForm puis après avoir mixé puis ordonner les données avec celles du classeur ouvert, enregistré puis envoyer un fichier par mail contenant toutes les informations nécessaires. (j'espère que c'est compréhensible.... )
S'il n'y a pas de solution, j'intégrerai l'ouverture puis la fermeture du fichier "base de données" à ma macro et ce n'est pas bien grave.... Ou peut être avez vous une solution (pour débutant) plus intelligente, il y a évidemment bcp de fonctionnalités que je ne connais pas.
Merci encore...
Et merci pour ta réponse...
Alors:
Sol1: Msg erreur: "Erreur d'execution '1004'. La methode 'Range de l'objet '_Global' a échoué.
Sol2: Msg errur: "Erreur d'execution '424': Objet requis
Le pingouin:
"Pourquoi les données de la liste déroulante ne peuvent pas être dans le même classeur ? "
Eladaz:
"L'idée est de travailler avec un classeur excel qui va me servir de base de donnée mais je n'ai aucune utilité de l'ouvrir, j'ai juste besoin des données pour nourrir mon UserForm et travailler sur un autre classeur excel. Le projet global consiste à récupérer des données sur le classeur (base de données fermé) grâce à un UserForm puis après avoir mixé puis ordonner les données avec celles du classeur ouvert, enregistré puis envoyer un fichier par mail contenant toutes les informations nécessaires. (j'espère que c'est compréhensible.... )
S'il n'y a pas de solution, j'intégrerai l'ouverture puis la fermeture du fichier "base de données" à ma macro et ce n'est pas bien grave.... Ou peut être avez vous une solution (pour débutant) plus intelligente, il y a évidemment bcp de fonctionnalités que je ne connais pas.
Merci encore...
... Et effectivement, j'avais oublié ds mon copier/coller le nom de variable NomFeuil mais cela ne change rien aux messages d'erreur....
Bonjour,
Merci pour l'information.
Il n'y a aucun problème pour aller chercher les valeurs pour la liste déroulante dans un classeur fermé.
Il faut connaitre exactement l'endroit où se trouvent ces données ; c'est OK pour le chemin, le nom du classeur et la feuille, il reste à préciser la plage de la feuille... !
Je suppose que le formulaire (UserForm) avec la zone de liste déroulante se trouve sur le classeur actif ... !
Pouvez-vous mettre ce fichier sur https://www.cjoint.com/ et poster le lien, ceci m'évitera de construire un exemple... !
Merci pour l'information.
Il n'y a aucun problème pour aller chercher les valeurs pour la liste déroulante dans un classeur fermé.
Il faut connaitre exactement l'endroit où se trouvent ces données ; c'est OK pour le chemin, le nom du classeur et la feuille, il reste à préciser la plage de la feuille... !
Je suppose que le formulaire (UserForm) avec la zone de liste déroulante se trouve sur le classeur actif ... !
Pouvez-vous mettre ce fichier sur https://www.cjoint.com/ et poster le lien, ceci m'évitera de construire un exemple... !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Eh bien pour le moment le UserForm ne se trouve attaché à aucune feuille active en particulier (il est dans "Feuilles" de mon VBAProjet (Personal.XLSB)), à terme il sera appelé par un autre UserForm présent dans une macro, lorsque l'on appuiera sur la touche "Ajouter Client". c'est pouquoi je ne suis pas sur de savoir comment vous envoyer de feuille active. Pour le moment le seul code que j'ai attaché à ce UserForm est:
Private Sub UserForm_Initialize()
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
NomFeuil = Sheets("Bank")
CheminBd = "'C:\Users\...\Documents\Projet TradeReports\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
ComboBank.List = CheminCompletBank
'With CheminCompletBank
'i = 2
'Do While CheminCompletBank.Cells(i, 1) <> ""
'Me.ComboBank.AddItem Cells(i, 1)
'i = i + 1
'Loop
'End With
End Sub
Et la feuille "Bank" présente dans "BdVariables.xlsx" ne contient rien d'autre qu'une colonne "A" avec l'intitulé "Client Bank" , et deux noms de banques en A2 et A3.
Merci encore de me consacrer du temps, l'idée n'est vraiment pas de vous en faire perdre trop, mais juste de connaitre la méthode de remplissage de mon Combobox avec fichier fermé.
Merci encore...
Private Sub UserForm_Initialize()
Dim CheminCompletBank As Variant
Dim CheminBd As String
Dim NomBd As String
Dim NomFeuil As String
Dim PlageBank As Range
Dim derlign As String
derlign = Range("A1").End(xlDown).Row
PlageBank = Range("A1:A" & derlign)
NomFeuil = Sheets("Bank")
CheminBd = "'C:\Users\...\Documents\Projet TradeReports\Bases de Données\"
NomBd = "BdVariables.xlsx"
CheminCompletBank = CheminBd & "[" & NomBd & "]" & NomFeuil & PlageBank
ComboBank.List = CheminCompletBank
'With CheminCompletBank
'i = 2
'Do While CheminCompletBank.Cells(i, 1) <> ""
'Me.ComboBank.AddItem Cells(i, 1)
'i = i + 1
'Loop
'End With
End Sub
Et la feuille "Bank" présente dans "BdVariables.xlsx" ne contient rien d'autre qu'une colonne "A" avec l'intitulé "Client Bank" , et deux noms de banques en A2 et A3.
Merci encore de me consacrer du temps, l'idée n'est vraiment pas de vous en faire perdre trop, mais juste de connaitre la méthode de remplissage de mon Combobox avec fichier fermé.
Merci encore...
Bonjour,
Merci pour l'information.
Comme c'est un peu boiteux, je vais vous créer un exemple selon ce que j'ai compris, patience... !
Merci pour l'information.
Comme c'est un peu boiteux, je vais vous créer un exemple selon ce que j'ai compris, patience... !
Bonjour,
Voici ma proposition : https://www.cjoint.com/?3IlkYGpVySn
Voir la note sur la feuille du classeur... !
Voici ma proposition : https://www.cjoint.com/?3IlkYGpVySn
Voir la note sur la feuille du classeur... !
Et en plus le nom de la feuille manque dans la variable [NomFeuil]...!
Salutations.
Le Pingou