Bonsoir le forum

Novice en programmation si quelqu'un peut m'aider je le remercie.

j'ai créé un userform avec plusieurs controls ( textbox, listbox, et combo) qui sont alimentés par une fonction recherche depuis plusieurs bases de données.
Ces controls vont incrémentés une feuille excel.

Ci-joint une partie du code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim i As Byte
Dim Cel As Range[/SIZE][/COLOR][SIZE=1][COLOR=#0000ff]For i = 0 To ListBox2.ListCount - 1
If ListBox2.Selected(i) = True Then MsgBox ListBox2.List(i)
Range("a65536").End(xlUp).Offset(1, 0).Value = DateSaisie
    Range("b65536").End(xlUp).Offset(1, 0).Value = TextBox1
    Range("c65536").End(xlUp).Offset(1, 0).Value = TextBox1
    'Range("a65536").End(xlUp).Offset(1, 0).Value = DateSaisie
    Range("e65536").End(xlUp).Offset(1, 0).Value = ListBox2.List(i)
    Range("f65536").End(xlUp).Offset(1, 0).Value = Module
    Range("g65536").End(xlUp).Offset(1, 0).Value = Thème
    Range("h65536").End(xlUp).Offset(1, 0).Value = Thémes_Manœuvres
    Range("i65536").End(xlUp).Offset(1, 0).Value = Temps_prat.Value
Next i
For Each Cel In Range("b1:b" & Cells(Rows.Count, "b").End(xlUp).Row)
    If IsDate(Cel) Then Cel = Format(Cel, "mmmm")
Next Cel
For Each Cel In Range("c1:c" & Cells(Rows.Count, "c").End(xlUp).Row)
    If IsDate(Cel) Then Cel = Format(Cel, "yyyy")
    Next Cel
'ai 2 questions:
Q1: lorsque je valide les données de la listbox1 vers la listbox2 les lignes de la listbox1 restent sélectionnées?
Nom : listbox.JPG
Affichages : 258
Taille : 26,5 Ko
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Private Sub CommandButton5_Click()
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then ListBox2.AddItem ListBox1.List(i)
If ListBox1.Selected(i) = True Then MsgBox ListBox1.List(i)
Next i 
End Sub
je voudrais une fois le transfert fait que la listbox1 redevienne normale ( sans noms sélectionnés).

Q2: J'ai une textbox nommée Module qui reçoit des données de types "inc" ou "sap" ou "opd" etc et je voudrais appliquer dans ma textbox nommées actions de formation la formule =NB.SI(F3;"Sap")+NB.SI(F3;"Opd")+NB.SI(F3;"Inc")+NB.SI(F3;"Sr")+NB.SI(F3;"Fdf")+NB.SI(F3;"Cad") mais en VBA de sorte que la valeur de ma textbox qui sera transférée dans la feuille soit du 1 ou du 0.

L'objectif étant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Range("h65536").End(xlUp).Offset(1, 0).Value = action_formation.Value
la valeur étant du 1 ou du 0 .
Sinon je suis obligé de copier la formule dans la feuille sur 20000 lignes.
J'ai réussi à convertir mes dates en mois et en année, la méthode n'est pas très orthodoxe mais ça fonctionne (40000 formules de moins dans la feuilles) oufffff.....
Par contre là, je sèche vraiment et une aide serait la bienvenue

Merci d'avance