Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/02/2008, 18h34   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 13
Points : 4
Points : 4
Par défaut listbox : données sur une autre feuille

Bonsoir,
je voudrais créer, dans un formulaire, une liste dont les données sont dans un tableau sur une autre feuille.
Malheureusement, je n'arrive pas à remplir correctement le champ "RowSource" pour lui indiquer où sont les données.
Je suppose que cela doit être relativement simple (quand on connait) mais aprés quelques heures de recherche dans les tutoriels et dans le forum, je suis incapable de m'en sortir.

Merci d'avance à qui voudra bien m'aider.
Cordialement,
Jean-Marie
jmcemoa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2008, 18h40   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 354
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 354
Points : 29 270
Points : 29 270
Quand tu dis une autre feuille, c'est dans le même document ?
Est-ce un formulaire ou un UserForm ?
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2008, 18h46   #3
Invité de passage
 
Inscription : janvier 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 13
Points : 4
Points : 4
C'est dans un autre document word et j'utilise un userform
jmcemoa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2008, 19h34   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 354
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 354
Points : 29 270
Points : 29 270
Tu dois ajouter le document qui contient les données à la collection des documents ouverts.

Code :
1
2
3
4
5
6
7
8
9
Dim sourceDoc as Document
Dim oTbl as Table
Dim i as integer
Set sourceDoc = Documents.Add (FileName:="le chemin et le nom du document")
Set oTbl = sourceDoc.Tables(1)
 
For i = 1 to oTbl.Rows.Count
    Me.MonCombo.AddItem oTbl.Cell(i,1).Range.Text
Next i
J'ai pas testé, mais c'est la voie à suivre.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2008, 20h30   #5
Invité de passage
 
Inscription : janvier 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 13
Points : 4
Points : 4
Merci Heureux-oli,
j'arrête là pour ce soir, ma tête va "exploser"

J'ai essayé d'employer ton code, mais je n'y arrive pas.
Faut-il ouvrir une listebox dans un userform avant ou non ? (j'ai essayé les 2)

en final, avec :

Code :
1
2
3
4
5
6
7
8
9
10
ChangeFileOpenDirectory _           ActiveDocument.Path & "\zebu\" 
Dim sourceDoc As Document
Dim oTbl As Table
Dim i As Integer
Set sourceDoc = Documents.Add(listededocs.doc)
Set oTbl = sourceDoc.Tables(1)
 
For i = 1 To oTbl.Rows.Count
     Me.MonCombo.AddItem oTbl.Cell(i, 1).Range.Text
Next i

j'obtiens le message suivant :

erreur de compilation
utilisation incorrecte du mot-clé Me
dans Me.MonCombo.AddItem oTbl.Cell(i,1).Range.Text

Ca ne rentre plus ...
Je pensais naïvement qu'il suffisait de mettre l'adresse du tableau dans le champ "RowSource"
Je reprendrais demain.

Merci encore et bonne soirée
Jean-Marie
jmcemoa est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/02/2008, 21h27   #6
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 354
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 354
Points : 29 270
Points : 29 270
c'est normal, Me est utilisé lorsque l'on se trouve dans le UserForm , j'ai oublié que c'était au départ de Excel.


Il faut faire Appel au UserForm qui devrait être UserForm1.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/02/2008, 19h28   #7
Invité de passage
 
Inscription : janvier 2008
Messages : 13
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 13
Points : 4
Points : 4
Bonsoir,
me revoilà après quelques jours d'absence dont certains mis à profit pour essayer de m'en sortir.
Malgré toute ma bonne volonté, je n'ai pas réussi dans la voie de l'userform.
J'ai donc changé d'optique et créé un document intermédiaire contenant des hyperliens vers les fichiers à imprimer et cela fonctionne, donc ... OUF !

Encore merci Heureux-oli qui a fait son possible mais mon niveau est vraiment trop bas en VBA word. Promis, je ferai des progrés.

Cordialement,
Jean-Marie
jmcemoa est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h40.


 
 
 
 
Partenaires

Hébergement Web