deux actions successives sur Sub_Click()

  • Initiateur de la discussion Initiateur de la discussion CAPRI_456
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

CAPRI_456

XLDnaute Occasionnel
Bonjour le Forum

Voilà mon soucis,

J'ai un code vb qui agit sur simple click sur ligne ListView1
(dans mon cas, il m'ouvre un fichier) et là pas de problèmes

''LV1 ----Action 1: OUVERTURE MANIFESTE PAR SIMPLE CLICK
Sub Listview1_Click()

With ListView1
Dim Chemin4 As String
Dim NomFichierDepart As String

Chemin4 = .ListItems(.SelectedItem.Index).ListSubItems(6)
NomFichierDepart = UserForm1.ListView1.SelectedItem.Text
Workbooks.Open (Chemin4 & "\" & ListView1.SelectedItem.Text)

Je souhaiterai que avant l'ouverture du fichier, il ajoute les données qui se trouvent dans deux ComboBox = Action 2

Je viens de placer un code pour récupérer le contenu de la ligne clickée: (la aussi cela fonctionne correctement)

Dim i As Long

For i = 1 To ListView1.ListItems.Count
If ListView1.ListItems(i).Selected = True Then

TxbManifeste = ListView1.ListItems(i).Text
TxbOrdre = ListView1.ListItems(i).ListSubItems(1).Text
TxbType = ListView1.ListItems(i).ListSubItems(2).Text
TxbNmanif = ListView1.ListItems(i).ListSubItems(3).Text
TxbDateRecep = ListView1.ListItems(i).ListSubItems(4).Text
TxbHrRecep = ListView1.ListItems(i).ListSubItems(5).Text
TxbRepSauve = ListView1.ListItems(i).ListSubItems(6).Text
TxbOriVol = ListView1.ListItems(i).ListSubItems(7).Text
TxbOriSector = ListView1.ListItems(i).ListSubItems(8).Text
TxbTypProd = ListView1.ListItems(i).ListSubItems(9).Text
TxbNbAWB = ListView1.ListItems(i).ListSubItems(10).Text
TxbNbColis = ListView1.ListItems(i).ListSubItems(11).Text
Txbpoids = ListView1.ListItems(i).ListSubItems(12).Text
TxbVolume = ListView1.ListItems(i).ListSubItems(13).Text
TxbValeur = ListView1.ListItems(i).ListSubItems(14).Text
TxbN°Manif = ListView1.ListItems(i).ListSubItems(15).Text
TxbOrd = ListView1.ListItems(i).ListSubItems(16).Text

End If
Next

Je veux y ajouter le contenu de deux combobox déjà alimentées
'Ici APPEL pour alimenter les combobox dans USerform1

Dim y As Long, Collec
Set Collec = CreateObject("Scripting.Dictionary")

With Sheets("Parametres")
For y = 2 To .Cells(65536, 1).End(xlUp).Row
If Not Collec.Exists(.Cells(y, 1).Value) Then Collec.Add .Cells _(y,1).Value, .Cells(y, 1).Value
Next
CbxAnalyste.List = Application.Transpose(Collec.Items)
CbxMotif.List = .Range("B2:B" & .Range("B65536").End(xlUp).Row).Value
End With



Pour compléter ma ligne de la listbox sélectionnée et la récupérer dans des textBox par le conteu des deux Combobox, j'ai utilisé le code proposé par JP 14 (dans " modifier contenu listview" )

Private Sub CdbAjout_Click()
Dim index1
'''Private Sub Btn_modifier_Click()
If index1 > 0 Then
With ListView1.ListItems(ListView1.SelectedItem.Index)
.ListSubItems(1).Text = TxbManifeste.Value
.ListSubItems(2).Text = TxbOrdre.Value
.ListSubItems(3).Text = TxbType.Value
.ListSubItems(4).Text = TxbNmanif.Value
.ListSubItems(5).Text = TxbDateRecep.Value
.ListSubItems(6).Text = TxbHrRecep.Value
.ListSubItems(7).Text = TxbRepSauve.Value
.ListSubItems(8).Text = TxbOriVol.Value
.ListSubItems(9).Text = TxbOriSector.Value
.ListSubItems(10).Text = TxbTypProd.Value
.ListSubItems(11).Text = TxbNbAWB.Value
.ListSubItems(12).Text = TxbNbColis.Value
.ListSubItems(13).Text = Txbpoids.Value
.ListSubItems(14).Text = TxbVolume.Value
.ListSubItems(15).Text = TxbValeur.Value
.ListSubItems(16).Text = TxbN°Manif.Value
.ListSubItems(17).Text = TxbOrd.Value
.ListSubItems(18).Text = CbxAnalyste.Value '
.ListSubItems(19).Text = CbxMotif.Value
End With
End If
End Sub

Ce dernier Code Ajout, ne me permet pas 😕:
a) de compléter la ligne avec le contenu des deux combobox
b) de plus, le fichier s'ouvre directement sans avoir réalisé a)

Merci de me dire comment faire ?

CAPRI_456🙂

En annexe, le fichier en question "Forumlast.xls" dont les codes se trouvent en fin de l'USF "UserForm1"
NB: probablement que vous ne pourrez pas ouvrir le fichier car pas disponible et que les chemins de répertoires ciblés ne le sont pas non plus
Mais ainsi , vous pourrez mieux visualiser
 

Pièces jointes

Re : deux actions successives sur Sub_Click()

Re- bjour le Forum,

voilà , j'ai un peu amélioré le code dans le fichier joint

Ai placé l'alimentation des combobox dans "intitialize" du UserForm1
Ai placé l'alimentation des textbox dans "Sub Listview1.click() du UserForm1

Donc jusque là tout va bien :
- manque le transfert vers la ligne du Listview sélectionnér au moyen de la commande Sub Ajout()
- et poursuivre avec l'ouverture du fichier XLS toujours dans Sub Listview1 click()

Merci

CAPRI_456
 

Pièces jointes

Re : deux actions successives sur Sub_Click()

Bonjour le Forum,

Ayant examiné un fil de "KIJN" sur le sujet "listview modifier" j'ai pu solutionner mon souci en utilisant des TEXTBOX pour réaliser les modifications:

le problème suivant subsiste:
-- COMMENT le faire via des COMBOBOX sur ce même Userform1?


Merci pour votre aide.

CAPRI_456
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
202
Réponses
4
Affichages
461
Réponses
3
Affichages
665
Réponses
2
Affichages
511
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
479
Retour