• Initiateur de la discussion Initiateur de la discussion totoche
  • 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 !

T

totoche

Guest
Bonjour,

je cherche à créer une application sous excel de Gestion documentaire.

Pour ce faire j'ai une userform qui me permet de saisir les données relatives à mes documents et de les envoyer vers une base.

Le problème arrive au niveau de la liste de diffusion j'ai créer une liste déroulante qui me permet de selectionner le destinataire et de l'envoyer grace a un bouton dans une zone de liste. quan je fais ok pour envoyer les données de ma userform dans ma base de données je souhaiterais que les destinataires sélectionnés (dans la zone de liste) viennent s'écrire dans une cellule bien précise et pas a la suite les uns des autres : cette cellule correspond à une cellule dont le champ de colonne à le même nom que le destinataire.

c'est pour pouvoir faire des filtres élaborés sur les champs destinataires.

Suis je clair dans mes exmplications ?

qquns peut il m'aider ?

HELP !!!
 
SNIFFF

Sniffff

je viens tous les jours m'instruire et m'améliorer sous excel grâce aux nombreuses connaissances et compétences des passionés qui fréquentent ce forum. J'ai déjà répondu également à pas mal de personne en prenant sur mon temps...et là je m'apercois que personne ne me répond...je trouve ca trop injuste !!!

EST CE QUE MON PB EST INSOLUTIONABLE !!!
 
Bonjour Totoche, le Forum

Nous sommes désolés, ton (tes) posts à la veille du 14 juillet ont dû passer inaperçu.

Je ne suis pas certain d'avoir compris mais voilà déjà une approche :

Private Sub CommandButton3_Click()
Dim C As Byte
Dim i As Byte

   
With ListBox1
       
For i = 0 To .ListCount - 1
               
For C = 2 To 5
                   
If Cells(9, C) = .List(i, 0) Then
                        Cells(9, C).Offset(1, 0) = .List(i, 0)
                       
Exit For
                   
End If
               
Next C
       
Next i
   
End With

End Sub


Maintenant si tu dois écrire en décalage de ligne aussi, une autre version :

Private Sub CommandButton3_Click()
Dim L As Integer
Dim C As Byte
Dim i As Byte

   
With ListBox1
       
For i = 0 To .ListCount - 1
               
For C = 2 To 5
                   
If Cells(9, C) = .List(i, 0) Then
                        L = Cells(5000, C).End(xlUp).Row + 1
                        Cells(L, C) = .List(i, 0)
                       
Exit For
                   
End If
               
Next C
       
Next i
   
End With


Bon Après Midi
[ol]@+Thierry[/ol]
 
Ah,

merci, je me sentais un peu seul sur le coup...

ton code marche très bien et je suis presque un peu honteux de ne pas l'avoir trouvé tous seul.

au plaisir de pouvoir vous aider une prochaine fois...

Bonne fin de journée
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour