Bonjour à tous (et bonne année !)
Je profite de ce début d'année pour remettre mes tableurs au propre e t
je souhaite créer des formulaires avec listes déroulantes ; par contr e
il faut que les données liées dans la plage d'entrée se trouvent so it
dans le même classeur que le formulaire, soit dans un classeur qui
soit ouvert en même temps sinon mes listes sont vides et excel ne
retrouve pas le lien.......
Dans mon cas les données sont dans un autre classeur et donc il faut
que tout soit ouvert........
Y a-t-il une solution pour remédier à ce problème ?
Dans l'attente de vos conseils et vous remerciant vivement par avance
Slts
Bonjour à tous (et bonne année !)
Je profite de ce début d'année pour remettre mes tableurs au propre e t
je souhaite créer des formulaires avec listes déroulantes ; par contr e
il faut que les données liées dans la plage d'entrée se trouvent so it
dans le même classeur que le formulaire, soit dans un classeur qui
soit ouvert en même temps sinon mes listes sont vides et excel ne
retrouve pas le lien.......
Dans mon cas les données sont dans un autre classeur et donc il faut
que tout soit ouvert........
Y a-t-il une solution pour remédier à ce problème ?
Dans l'attente de vos conseils et vous remerciant vivement par avance
Slts
Bonjour à tous (et bonne année !)
Je profite de ce début d'année pour remettre mes tableurs au propre e t
je souhaite créer des formulaires avec listes déroulantes ; par contr e
il faut que les données liées dans la plage d'entrée se trouvent so it
dans le même classeur que le formulaire, soit dans un classeur qui
soit ouvert en même temps sinon mes listes sont vides et excel ne
retrouve pas le lien.......
Dans mon cas les données sont dans un autre classeur et donc il faut
que tout soit ouvert........
Y a-t-il une solution pour remédier à ce problème ?
Dans l'attente de vos conseils et vous remerciant vivement par avance
Slts
Bonjour, (bonne année également)
Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
cadre de ton classeur ouvert.
Il te suffit d'y ajouter une feuille que tu nommeras tables par
exemple et où tu mettra
uniquement les quelques tableaux de référence dont tu as besoin po ur
alimenter ton "UF"
Cette feuille peut contenir, au choix, des copies ou des liaisons,
selon ton contexte de mise à jour des données de base.
Cordialement.
--
lSteph
Bonjour, (bonne année également)
Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
cadre de ton classeur ouvert.
Il te suffit d'y ajouter une feuille que tu nommeras tables par
exemple et où tu mettra
uniquement les quelques tableaux de référence dont tu as besoin po ur
alimenter ton "UF"
Cette feuille peut contenir, au choix, des copies ou des liaisons,
selon ton contexte de mise à jour des données de base.
Cordialement.
--
lSteph
Bonjour, (bonne année également)
Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
cadre de ton classeur ouvert.
Il te suffit d'y ajouter une feuille que tu nommeras tables par
exemple et où tu mettra
uniquement les quelques tableaux de référence dont tu as besoin po ur
alimenter ton "UF"
Cette feuille peut contenir, au choix, des copies ou des liaisons,
selon ton contexte de mise à jour des données de base.
Cordialement.
--
lSteph
Il s'est glissé une exactitude, Correction apportée
+ une procédure pour obtenir une liste dans ton
combobox en ordre croissant
'--------------------------------------------------------
Sub test()
Dim Fichier As Variant
Dim NomFeuille As String
Dim col As Integer, X()
NomFeuille = "Feuil1"
col = 0 ' signifie colonne A:A
'Col = 4 signifie colonne E:E
Fichier = "C:UsersDMDocumentsSpinbutton exemple.xls"
X = Application.Transpose(MaListWithADO(Fichier, NomFeuille, col))
X = BubbleSort(X)
Userform1.ComboBox1.List = Application.Transpose(X)
End Sub
'--------------------------------------------------------
Function MaListWithADO(Fichier, _
NomFeuille As String, col As Integer) As Variant
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String
Requete = "SELECT * FROM [" & NomFeuille & "$]"
'prépare les commandes ADO
Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Fichier & ";" & _
"Extended Properties=""Excel 8.0;HDR=YES;IMEX=2"""
Rst.Open Requete, Conn, adOpenStatic, adLockReadOnly
MaListWithADO = Rst.GetRows(, , col)
End Function
'--------------------------------------------------------
Function BubbleSort(List()) As Variant
' Sorts the List array in ascending order
Dim First As Integer, Last As Integer
Dim i As Integer, j As Integer
Dim Temp
First = LBound(List)
Last = UBound(List)
For i = First To Last - 1
For j = i + 1 To Last
If List(i, 1) > List(j, 1) Then
Temp = List(j, 1)
List(j, 1) = List(i, 1)
List(i, 1) = Temp
End If
Next j
Next i
BubbleSort = List
End Function
'--------------------------------------------------------
Il s'est glissé une exactitude, Correction apportée
+ une procédure pour obtenir une liste dans ton
combobox en ordre croissant
'--------------------------------------------------------
Sub test()
Dim Fichier As Variant
Dim NomFeuille As String
Dim col As Integer, X()
NomFeuille = "Feuil1"
col = 0 ' signifie colonne A:A
'Col = 4 signifie colonne E:E
Fichier = "C:UsersDMDocumentsSpinbutton exemple.xls"
X = Application.Transpose(MaListWithADO(Fichier, NomFeuille, col))
X = BubbleSort(X)
Userform1.ComboBox1.List = Application.Transpose(X)
End Sub
'--------------------------------------------------------
Function MaListWithADO(Fichier, _
NomFeuille As String, col As Integer) As Variant
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String
Requete = "SELECT * FROM [" & NomFeuille & "$]"
'prépare les commandes ADO
Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Fichier & ";" & _
"Extended Properties=""Excel 8.0;HDR=YES;IMEX=2"""
Rst.Open Requete, Conn, adOpenStatic, adLockReadOnly
MaListWithADO = Rst.GetRows(, , col)
End Function
'--------------------------------------------------------
Function BubbleSort(List()) As Variant
' Sorts the List array in ascending order
Dim First As Integer, Last As Integer
Dim i As Integer, j As Integer
Dim Temp
First = LBound(List)
Last = UBound(List)
For i = First To Last - 1
For j = i + 1 To Last
If List(i, 1) > List(j, 1) Then
Temp = List(j, 1)
List(j, 1) = List(i, 1)
List(i, 1) = Temp
End If
Next j
Next i
BubbleSort = List
End Function
'--------------------------------------------------------
Il s'est glissé une exactitude, Correction apportée
+ une procédure pour obtenir une liste dans ton
combobox en ordre croissant
'--------------------------------------------------------
Sub test()
Dim Fichier As Variant
Dim NomFeuille As String
Dim col As Integer, X()
NomFeuille = "Feuil1"
col = 0 ' signifie colonne A:A
'Col = 4 signifie colonne E:E
Fichier = "C:UsersDMDocumentsSpinbutton exemple.xls"
X = Application.Transpose(MaListWithADO(Fichier, NomFeuille, col))
X = BubbleSort(X)
Userform1.ComboBox1.List = Application.Transpose(X)
End Sub
'--------------------------------------------------------
Function MaListWithADO(Fichier, _
NomFeuille As String, col As Integer) As Variant
Dim Conn As ADODB.Connection, Rst As New ADODB.Recordset
Dim Requete As String
Requete = "SELECT * FROM [" & NomFeuille & "$]"
'prépare les commandes ADO
Set Conn = New ADODB.Connection
Conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & Fichier & ";" & _
"Extended Properties=""Excel 8.0;HDR=YES;IMEX=2"""
Rst.Open Requete, Conn, adOpenStatic, adLockReadOnly
MaListWithADO = Rst.GetRows(, , col)
End Function
'--------------------------------------------------------
Function BubbleSort(List()) As Variant
' Sorts the List array in ascending order
Dim First As Integer, Last As Integer
Dim i As Integer, j As Integer
Dim Temp
First = LBound(List)
Last = UBound(List)
For i = First To Last - 1
For j = i + 1 To Last
If List(i, 1) > List(j, 1) Then
Temp = List(j, 1)
List(j, 1) = List(i, 1)
List(i, 1) = Temp
End If
Next j
Next i
BubbleSort = List
End Function
'--------------------------------------------------------
Merci à tous pour l'intérêt que vous portez à mon problème, mais >je ne
sais absolument pas programmer, et c'est donc du chinois, voir
pire......
Je vais essayer de procéder différemment, en "bidouillant".
Votre niveau de connaissance me dépasse et m'impressionne à >vrai dire,
bravo à vous et merci
Slts
Merci à tous pour l'intérêt que vous portez à mon problème, mais >je ne
sais absolument pas programmer, et c'est donc du chinois, voir
pire......
Je vais essayer de procéder différemment, en "bidouillant".
Votre niveau de connaissance me dépasse et m'impressionne à >vrai dire,
bravo à vous et merci
Slts
Merci à tous pour l'intérêt que vous portez à mon problème, mais >je ne
sais absolument pas programmer, et c'est donc du chinois, voir
pire......
Je vais essayer de procéder différemment, en "bidouillant".
Votre niveau de connaissance me dépasse et m'impressionne à >vrai dire,
bravo à vous et merci
Slts
On 4 jan, 17:46, LSteph wrote:
> Bonjour, (bonne année également)
> Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
> cadre de ton classeur ouvert.
> Il te suffit d'y ajouter une feuille que tu nommeras tables par
> exemple et où tu mettra
> uniquement les quelques tableaux de référence dont tu as besoin pour
> alimenter ton "UF"
> Cette feuille peut contenir, au choix, des copies ou des liaisons,
> selon ton contexte de mise à jour des données de base.
> Cordialement.
> --
> lSteph
Merci de la réponse,
Concrètement, je calcule des devis : J'ai une liste de matière
première avec longueur, largeur, poids, prix........, quand je
commence un devis (1 classeur, 1 fichier), le formulaire est parfait
pour sélectionner une matière, ensuite je passe par recherchev entre
autre pour récupérer toutes les données inhérentes à cette mati ère....
cela fonctionne mais j'aurai voulu faire une base
indépendante........parfait quand la base est ouverte en même temps
que le calcul.........c'est le formulaire qui m'ennuie......
Désolé je ne suis pas trop calé avec excel et c'est difficile
d'expliquer ce que je veux...........- Masquer le texte des messages pr écédents -
- Afficher le texte des messages précédents -
On 4 jan, 17:46, LSteph <gmlst...@gmail.com> wrote:
> Bonjour, (bonne année également)
> Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
> cadre de ton classeur ouvert.
> Il te suffit d'y ajouter une feuille que tu nommeras tables par
> exemple et où tu mettra
> uniquement les quelques tableaux de référence dont tu as besoin pour
> alimenter ton "UF"
> Cette feuille peut contenir, au choix, des copies ou des liaisons,
> selon ton contexte de mise à jour des données de base.
> Cordialement.
> --
> lSteph
Merci de la réponse,
Concrètement, je calcule des devis : J'ai une liste de matière
première avec longueur, largeur, poids, prix........, quand je
commence un devis (1 classeur, 1 fichier), le formulaire est parfait
pour sélectionner une matière, ensuite je passe par recherchev entre
autre pour récupérer toutes les données inhérentes à cette mati ère....
cela fonctionne mais j'aurai voulu faire une base
indépendante........parfait quand la base est ouverte en même temps
que le calcul.........c'est le formulaire qui m'ennuie......
Désolé je ne suis pas trop calé avec excel et c'est difficile
d'expliquer ce que je veux...........- Masquer le texte des messages pr écédents -
- Afficher le texte des messages précédents -
On 4 jan, 17:46, LSteph wrote:
> Bonjour, (bonne année également)
> Tu peux tout à fait rester avec un formulaire ("UF" userform) dans le
> cadre de ton classeur ouvert.
> Il te suffit d'y ajouter une feuille que tu nommeras tables par
> exemple et où tu mettra
> uniquement les quelques tableaux de référence dont tu as besoin pour
> alimenter ton "UF"
> Cette feuille peut contenir, au choix, des copies ou des liaisons,
> selon ton contexte de mise à jour des données de base.
> Cordialement.
> --
> lSteph
Merci de la réponse,
Concrètement, je calcule des devis : J'ai une liste de matière
première avec longueur, largeur, poids, prix........, quand je
commence un devis (1 classeur, 1 fichier), le formulaire est parfait
pour sélectionner une matière, ensuite je passe par recherchev entre
autre pour récupérer toutes les données inhérentes à cette mati ère....
cela fonctionne mais j'aurai voulu faire une base
indépendante........parfait quand la base est ouverte en même temps
que le calcul.........c'est le formulaire qui m'ennuie......
Désolé je ne suis pas trop calé avec excel et c'est difficile
d'expliquer ce que je veux...........- Masquer le texte des messages pr écédents -
- Afficher le texte des messages précédents -