Page précédente | Page suivante | Page : 1 2

Word Excel Vb pour un nul....
Hors ligne Cdurootsman Le 24/04/2009 à 01:16 Profil de Cdurootsman Configuration de Cdurootsman
Tout d'abord bonjour tout le monde, je suis un tout nouveau dans la programation puisque je viens de me décider à m'y intérresser. Je vous remercie donc tous d'avance pour l'aide que vous pourrez m'apporter.

Mon problème est le suivant, j'ai un fichier Word pour chacun de mes clients (nom, adresse, ect...), je voudrais remplir une combobox a partir d'un fichier Excel dans lequel il y a une liste de mot dans une seule et meme colone et le soucis c'est que je ne connais absolument aucun code, même si j'en devine quelques un...

Par la suite je voudrais insérer 2 cases options. En gros j'en aurais une pour "la vente" et une autre pour "la location", et je voudrais que en cliquant sur une de ces case un texte (qui pourrait être tiré d'un autre fichier word) apparaisse. Sachant que les 2 cases option peuvent être coché en meme temps et que les 2 textes (celui qui correspond a la vente et celui pour la location) se mettent a la suite l'un de l'autre.

Mon but n'est pas que fassiez le travails a ma place, mais bien que je comprenne comment tout cela fonctionne de façon a pouvoir y reproduire par moi meme. N'hésitez à expliquer comme si j'été un enfant de  5 ans.
Voila j'éspère avoir était clair. Si vous avez des questions demandez moi. En espérant que ca soit pas trop compliquer, même si je suis sur qu'il a plein de petit génie de la programation qui traine dans le coin.
Merci a tous
Hors ligne Wilder Le 24/04/2009 à 20:42 Profil de Wilder Configuration de Wilder
Viconaute Modérateur
Bonjour Cdurootsman,

Pour commencer, tu peux créer un fichier Excel et nommer la cellule A1 par exemple: MOTS

Ensuite, à partir de la cellule A2 en descendant, tu mets les mots que tu veux.

Maintenant, pour coder ton UserForm1 avec ton ComboBox1, quand tu cliques dans ton userform, tu choisis
l'option Initialize  après avoir placé ton ComboBox dans ton UserForm.

Introduis ce code ensuite.

Private Sub UserForm_Initialize()

With Sheets("nom de ta feuille")
For i = 2 To .Range("a65000").End(xlUp).Row
If .Cells(i, 1) <> .Cells(i - 1, 1) Then
ComboBox1.AddItem .Cells(i, 1).Value
End If
Next
End With


End Sub


Donne-moi des nouvelles.

wilder
--
Trop d'intelligence fait partir la sagesse. D'où l'importance de répondre au autres avec grand respect!!!!!!!!!
-----------
Hors ligne Cdurootsman Le 24/04/2009 à 21:52 Profil de Cdurootsman Configuration de Cdurootsman
Merci beaucoup Wilder de t'être intérressé a ce sujet.
En fait ma combobox se trouve sur word, mais ma liste dans un fichier excel. Il faudrait que la combobox de word lise le fichier excel.
Merci encore de m'aidé^^
Hors ligne Wilder Le 25/04/2009 à 00:04 Profil de Wilder Configuration de Wilder
Viconaute Modérateur
Ah ok, désolé.

Voici une façon de faire:


Private Sub UserForm_Initialize()
Dim xlAppList As Excel.Application
Dim MyWorkbook As Excel.Workbook

ExcelFile = "C:\Documents and Settings\xxxxx\Desktop\ton fichier.xls"   'Endroit ou est le fichier excel
    Table = "Feuil1" 'nom de la feuille
    Set xlAppList = CreateObject("Excel.Application")
    Set MyWorkbook = xlAppList.Workbooks.Open(ExcelFile, 0, , , "")
    
    MyWorkbook.sheets(Table).Select
    For Each c In ActiveSheet.Range("A1", "A" & Trim(Str(cells(65535, 1).End(xlUp).Row)))
          
       UserForm1.ComboBox1.AddItem sheets(Table).cells(c.Row, 1)
    Next
      
    MyWorkbook.Close savechanges:=True
    Set xlAppList = Nothing
    Set MyWorkbook = Nothing
End Sub


N'oublie pas d'ajouter Microsoft Excel X,0 Objet Librairy dans les références du projet Word, sinon, ça ne marchera pas. Pour ça, tu vas dans Outil et ensuite Référence.

Donne-moi des nouvelles.

wilder
--
Trop d'intelligence fait partir la sagesse. D'où l'importance de répondre au autres avec grand respect!!!!!!!!!
-----------
Hors ligne Cdurootsman Le 25/04/2009 à 11:57 Profil de Cdurootsman Configuration de Cdurootsman
Voila, j'ai essayé mais ma combobox reste toujours vide, j'ai bien rajouté le "Microsoft Excel X,0 Objet Librairy ".
Pour cette ligne:
For Each c In ActiveSheet.Range("A1", "A" & Trim(Str(cells(65535, 1).End(xlUp).Row)))
Le deuxième A dans la paranthèse c'est bien la où finissent mes données? par exemple "A1","A7"??
Et sinon tout les termes en rouges dans ce que ty m'as donné c'est des termes a modifier?
Merci en tout cas, c'est super sympa de ta part.
Hors ligne Wilder Le 25/04/2009 à 14:13 Profil de Wilder Configuration de Wilder
Viconaute Modérateur
Dans ce code:

For Each c In ActiveSheet.Range("A1", "A" & Trim(Str(cells(65535, 1).End(xlUp).Row)))
Le premier A1, représente à partir de ou il commence la sélection de ton menu. Le A qui suis, représente le dernier mot inscrit dans cette colonne. Donc ton menu sera entre ces 2 points de repère. N'ajoute pas de numéro au 2e A.

Maintenant, tu dois modifier 2 choses:


ExcelFile = "C:\Documents and Settings\xxxxx\Desktop\t<span style="color:#000080">on fichier.xls"</span>   'Endroit ou est le fichier Excel
donc cette partie du code va ouvrir ton fichier Excel afin de remplir ton combobox. Pour cela, tu dois inscrire l'endroit où se trouve ton fichier Excel suivi du nom de ton fichier.

Ensuit il y a:


Table = "Feuil1" 'nom de la feuille
Cette partie du code représente le nom de la feuille de ton fichier Excel. Remplace Feuil1 par le nom de ta feuille.

Petite question, quelle version as-tu de Microsoft Office? 2003 ou 2007?
J'ai testé sur 2003 et ça fonctionne. Je n'ai pas testé sur 2007.

wilder
--
Trop d'intelligence fait partir la sagesse. D'où l'importance de répondre au autres avec grand respect!!!!!!!!!
-----------
Hors ligne Cdurootsman Le 26/04/2009 à 20:07 Profil de Cdurootsman Configuration de Cdurootsman
Salut et merci encore Wilder pour toute l'aide que tu me donnes.
J'ai un pack office 2003.
Ca ne marche toujours pas, je pense que ton code est bon (surtout si tu l'as essayé!) mais je dois avoir un problème de paramètrage, quelque chose qui manque, mais aucune idée de ce que ça peut etre. Je vais essayer de chercher et je te tient au courant.
A++++
Hors ligne Wilder Le 26/04/2009 à 20:41 Profil de Wilder Configuration de Wilder
Viconaute Modérateur
Envoie-moi ton fichier Word et Excel par courriel.

Je vais pouvoir t'aider.


wilder
--
Trop d'intelligence fait partir la sagesse. D'où l'importance de répondre au autres avec grand respect!!!!!!!!!
-----------
Hors ligne Wilder Le 26/04/2009 à 22:06 Profil de Wilder Configuration de Wilder
Viconaute Modérateur
Je t'ai envoyé ton fichier Excel avec un fichier Word ou tu trouveras un userform avec un combobox.

Donne-moi de tes nouvelles.

wilder
--
Trop d'intelligence fait partir la sagesse. D'où l'importance de répondre au autres avec grand respect!!!!!!!!!
-----------
Hors ligne Cdurootsman Le 26/04/2009 à 22:59 Profil de Cdurootsman Configuration de Cdurootsman
Merci Wilder, pour ton aide et le temps que tu as pris pour moi.
Maintenant tout marche!!

Page précédente | Page suivante | Page : 1 2

Aide informatique | Communauté d'entraide informatique | Aide informatique | Forum d'assistance informatique | Forum-Vista | Formation informatique | Forum Informatique | Devenir partenaire