Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Amélioration codage

pompaero

XLDnaute Impliqué
Bonjour le forum,

Je cherche à améliorer mon codage dans ce classeur.
J’aimerai dans la feuil BDD colonne D à l’aide du formulaire UF_Plannif avoir lors de l’enregistrement des données, le temps correspondant aux items (évènements) défini dans la feuil Liste.
Je n’arrive pas à modifier le codage qui pour moi serait la dedans :
VB:
'dans Module1
ChargeListBox2
CB_Valider_click dans UF_Planif
            With Sheets("BDD")
                l = .Range("A" & Rows.Count).End(xlUp).Row + 1    'Pour placer le nouvel enregistrement à la première ligne de tableau non vide
                For i = 0 To ListBox1.ListCount - 1
                    If ListBox1.Selected(i) Then
                        .Range("A" & l).Value = MaDate
                        .Range("A" & l).NumberFormat = "dd-mm-yy"
                        .Range("B" & l).Value = ListBox1.List(i)
                        .Range("C" & l).Value = ListBox2
                        [COLOR=rgb(209, 72, 65)]If Left(Me.ListBox2, 1) = "G" Then .Range("D" & l).Value = Val(Mid(Me.ListBox2, 2))[/COLOR]
                        l = l + 1
Code:
'dans UF_Planif
Private Sub ListBox2_Change()    'sigle
Case 2
            For i = 0 To Me.ListBox1.ListCount - 1
                If Me.ListBox1.Selected(i) Then test = True: Exit For
            Next
            If test Then
                For i = 0 To Me.ListBox1.ListCount - 1
                    If Me.ListBox1.Selected(i) Then
                        Me.ListBox1.List(i, 2) = Me.ListBox2
                        If Left(Me.ListBox2, 1) = "G" Then
                            Me.ListBox1.List(i, 3) = Mid(Me.ListBox2, 2)
                        Else
                            Me.ListBox1.List(i, 3) = ""
                        End If
                    End If
Je comprends que ce code en rouge récupère les données après la lettre G, mais ce principe ne correspond plus à mes besoins.
C'est à la place de cela qu'il me faut le souhait en début de texte en haut.

Je vous en remercie par avance.
Cdlt
pompaero;
 

Pièces jointes

  • Pompaero planning 2024 .xlsm
    572.4 KB · Affichages: 3
Solution
C
Bonsoir pompaero

Pour ma part, ça faisait un moment que je ne t'avais pas dépanné
Bonne année 2024

Alors, ajout d'une petite fonction et modification du code et voilà

A+
C

Compte Supprimé 979

Guest
Bonsoir pompaero

Pour ma part, ça faisait un moment que je ne t'avais pas dépanné
Bonne année 2024

Alors, ajout d'une petite fonction et modification du code et voilà

A+
 

Pièces jointes

  • Pompaero planning 2024 .xlsm
    574.1 KB · Affichages: 2

pompaero

XLDnaute Impliqué
Bonsoir BrunoM45

Bonne année 2024 également.
oui ça fait un moment que je ne suis pas venu ici, beaucoup occupé depuis quelques; je me suis créé ma ptite Sté.
Cool, je regarde et reviens pour te dire.

merci
A+
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Juste une remarque en passant : on ne peut pas forcer la couleur du texte si on utilise le paramètre vb dans la balise code.
En revanche, on peut le faire si on utilise le paramètre rich, mais on perd alors la coloration syntaxique de VB.

Enrichi (BBcode):
'dans Module1
ChargeListBox2
CB_Valider_click dans UF_Planif
            With Sheets("BDD")
                l = .Range("A" & Rows.Count).End(xlUp).Row + 1    'Pour placer le nouvel enregistrement à la première ligne de tableau non vide
                For i = 0 To ListBox1.ListCount - 1
                    If ListBox1.Selected(i) Then
                        .Range("A" & l).Value = MaDate
                        .Range("A" & l).NumberFormat = "dd-mm-yy"
                        .Range("B" & l).Value = ListBox1.List(i)
                        .Range("C" & l).Value = ListBox2
                        If Left(Me.ListBox2, 1) = "G" Then .Range("D" & l).Value = Val(Mid(Me.ListBox2, 2))
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
329
Réponses
4
Affichages
451
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…