Soyez le premier à donner votre avis sur cette source.
Snippet vu 28 935 fois - Téléchargée 48 fois
Option Explicit Private Sub Form_Load() List1.AddItem "Adam" List1.AddItem "Bernard" List1.AddItem "Charles" List1.AddItem "Christophe" List1.AddItem "Edouard" List1.AddItem "Emilie" List1.AddItem "Fabrice" List1.AddItem "Juliette" End Sub Private Sub cmdListEXCEL_Click() Dim Appli As New Application Dim Ligne As String Dim LigneExcel As Integer Dim compt As Integer 'Rendre visible EXCEL Appli.Visible = True 'Créer un nouveau classeur EXCEL initialisé à la ligne 1 Appli.Workbooks.Add.Activate LigneExcel = 1 'Inscrire le contenu d'une listbox dans la feuille 1 d'un classeur EXCEL For compt = 0 To List1.ListCount - 1 ' Affecter les données de la listbox dans les cellules de la feuille With ActiveWorkbook.Worksheets("Feuil1") .Cells(LigneExcel, 1) = List1.List(compt) LigneExcel = LigneExcel + 1 End With Next compt MsgBox "Importation terminée.", vbInformation + vbOKOnly, "Fichier Texte -> Classeur EXCEL" Unload Me End Sub
21 avril 2010 à 18:06
J'ai un fichier excel d'une seule feuille, à l'interieur y a un formulaire, je dois mettre une liste déroulante à plusieurs choix, et quand l'utilisateur selectionne un champ, implicitement les données relatives a ce champs reste et les autres se cachent.
Comment faire ça??
Merci d'avance et de prendre en considération que je suis débutante en VBA.
29 mai 2009 à 17:02
ligne = 2 + ListBox1.ListIndex
qui ne fonctionne pas mais celle du dessous
ActiveCell = Cells(ligne, 1)
il y avait un oublie "Feuil2" comme ceci
ActiveCell = Feuil2.Cells(ligne, 1)
il faut pas grand chose pour passer du temps parfois !!!
mon code si simple sera peut être utile à d'autres.
29 mai 2009 à 14:59
J'ai un classeur avec 2 feuilles.
Sur la feuil1 figure une listbox et deux boutons, 1 qui charge (dans la listbox), une liste d'articles contenus dans la colonne B et l'autre qui la vide.
Ensuite quand une cellule de la feuil1 est sélectionnée et que je double clic sur un des articles de la listbox la cellule activée écrit la référence de l'article situé dans la colonne A.
Tout marche bien quand les listes des colonnes A et B sont sur la feuil1 mais si je les place sur la feuil2 je peux charger ou vider ma listbox avec les doutons mais le double clic ne fonctionne pas.
Je n'arrive pas malgré mais recherches a trouver la bonne syntaxe pour lui dire de charger la référence de la colonne A feuil2.
En fait je voudrais faire référence à une feuille d'un autre classeur.
Voici mon code actuel.
Je suis sure d'être prêt du but.
Merci, cela m'aidera beaucoup.
Code dans vba feuil1
'Chargement liste
Private Sub CommandButton1_Click()
ListBox1.Clear
ComboListe
End Sub
'Vidage liste
Private Sub CommandButton2_Click()
ListBox1.Clear
End Sub
'Transfer pas double clic
Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
ligne = 2 + ListBox1.ListIndex '<== ligne qui ne fonctionne pas
ActiveCell = Cells(ligne, 1)
End Sub
Code dans module1
Sub ComboListe()
ligne = 2
Do Until Feuil1.Cells(ligne, 2) = "" And _
Feuil2.Cells(ligne + 1, 2) = ""
Feuil1.ListBox1.AddItem Feuil2.Cells(ligne, 2)
ligne = ligne + 1
Loop
End Sub
23 mai 2007 à 12:23
Juste pour simplifier un peu le code et pour permettre d'exporter une listview qui contient plusieurs colonnes :
--------------------------------------------------------
Private Sub cmdListEXCEL_Click()
Dim Appli As New Application
Dim i, j As Integer
Appli.Visible = True
Appli.Workbooks.Add.Activate
'Parcours des lignes du listview
For i = 1 To Lv.ListItems.Count - 1
'Parcours des colonnes du listview et traitement
For j = 1 To Lv.ColumnHeaders.Count - 1
With ActiveWorkbook.Worksheets("Feuil1")
.Cells(i, j) = Lv.ListItems(i).SubItems(j)
End With
Next
Next
MsgBox "Importation terminée.", vbInformation + vbOKOnly, "Fichier Texte -> Classeur EXCEL"
End Sub
----------------------------------------------------------
26 oct. 2001 à 21:59
ce code me parait intéréssant,mais pour un utilisateur de VB,et il possible de faire l'inverse; récupérer les données d'une feuille excel et les inssérer dans une base acess
merci d'avance pour la reponce
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.