Tempus01
Messages postés81Date d'inscriptionmercredi 6 janvier 2021StatutMembreDernière intervention27 septembre 2022
-
13 févr. 2021 à 12:09
vb95
Messages postés3508Date d'inscriptionsamedi 11 janvier 2014StatutContributeurDernière intervention 2 septembre 2024
-
14 févr. 2021 à 11:47
Bonjour le forum,
Je recherche un code qui me permettrait d'avoir moins de ligne de IF.
Je m'explique, mon code fonctionne bien mais il est trop lourd/long, je me demande si il n'existe pas une autre façon de procéder afin d'arriver au même résultats.
le Code me permet d'ouvrir un dossier, il y a 14 dossiers principal Music1 Music2,... jusqu'à Music14, puis les 3 sous dossier 2019, 2020 et 2021 et pour finir 1, 2, 3...12 pour les mois de l'année.
Dim Janvier As String
Dim Février As String
Dim Mars As String
Dim Avril As String
Dim Mai As String
Dim Juin As String
Dim Juillet As String
Dim Août As String
Dim Septembre As String
Dim Octobre As String
Dim Novembre As String
Dim Décembre As String
Dim V1 = "\1"
Dim V2 = "\2"
Dim V3 = "\3"
Dim V4 = "\4"
Dim V5 = "\11"
Dim V6 = "\5"
Dim V7 = "\6"
Dim V8 = "\7"
Dim V9 = "\8"
Dim V10 = "\9"
Dim V11 = "\10"
Dim V12 = "\12"
Dim Dossier2019 = "C: \Music1\2019"
Dim Dossier2020 = "C: \Music1\2020"
Dim Dossier2021 = "C: \Music1\2021"
ComboBox1.Items.Add("Music1")
ComboBox1.Items.Add("Music2")
ComboBox1.Items.Add("Music3")
ComboBox1.Items.Add("Music4")
ComboBox1.Items.Add("Music5")
ComboBox1.Items.Add("Music6")
ComboBox1.Items.Add("Music7")
ComboBox1.Items.Add("Music8")
ComboBox1.Items.Add("Music9")
ComboBox1.Items.Add("Music10")
ComboBox1.Items.Add("Music11")
ComboBox1.Items.Add("Music12")
ComboBox1.Items.Add("Music13")
ComboBox1.Items.Add("Music14")
ComboBox3.Items.Add("Janvier")
ComboBox3.Items.Add("Février")
ComboBox3.Items.Add("Mars")
ComboBox3.Items.Add("Avril")
ComboBox3.Items.Add("Mai")
ComboBox3.Items.Add("Juin")
ComboBox3.Items.Add("Juillet")
ComboBox3.Items.Add("Août")
ComboBox3.Items.Add("Septembre")
ComboBox3.Items.Add("Octobre")
ComboBox3.Items.Add("Novembre")
ComboBox3.Items.Add("Décembre")
ComboBox2.Items.Add("2021")
ComboBox2.Items.Add("2020")
ComboBox2.Items.Add("2019")
If ComboBox1.Text = "Music1" And ComboBox2.Text = "2021" And ComboBox3.Text = "Janvier" Then
Janvier = Dossier2021 + V1
Process.Start(Janvier)
Dim tableau As String() = {"mot1", "mot2", "mot3"}
Mais c'est sûr et certain tu devrais savoir ce qu'est un tableau, et comment on l'utilise avant même d'avoir découvert les combobox.
Comme la majorité des autodidactes (moi aussi à mon temps...) tu mets la charrue avant les boeufs.
Le meilleur conseil que je puisse te donner c'est de mettre ton projet de coté quelques jours et de suivre un cours en ligne, mais pas celui de PLassere, (désolé VB) il s'adresse aux anciens de VB6 ou VBA, et il a quelques défauts selon moi.
Pour un primo codeur .Net, je conseille celui de Tahé https://tahe.developpez.com/dotnet/vbnet/
Après ça tu auras le socle nécessaire à un bon apprentissage.
Whismeril
Messages postés19143Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention31 août 2024660 Modifié le 13 févr. 2021 à 12:37
Bonjour
Tout d’abord il est important de bien nommer tes contrôles.
C’est plus facile pour nous de comprendre et même pour toi dans 1 an ou 2, quand tu voudras faire des modifs.
Je vais utiliser une convention de nommage courante: 3 caractères désignant le type de contrôle en minuscules puis un ou plusieurs mots décrivant son utilité en camelCase.
Tu crées 3 tableaux
un avec tes mots « Musicx »
un avec les mois
un avec les années
Ensuite, tu bindes tes tableaux aux combobox
cbxMusic.DataSource = tabMusic
Etc
Pour créer le chemin de ton dossier tu vas te servir de la classe Path.
dim chemin as string = Path.Combine("C:", cbxMusic.Text, cbxAnnee.Text, (cbxMois.SelectedIndex + 1).ToString())
Whismeril
Messages postés19143Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention31 août 2024660 13 févr. 2021 à 12:39
Whismeril
Messages postés19143Date d'inscriptionmardi 11 mars 2003StatutContributeurDernière intervention31 août 2024660 Modifié le 13 févr. 2021 à 13:20
D'ailleurs là
https://codes-sources.commentcamarche.net/forum/affich-10104036-debutant-en-vb-net-et-deja-passionne#1
le 7 janvier, VB95 t'as déjà proposé le cours de PLassere.
Si tu avais suivi son conseil à l'époque, au plus tard, le 15 janvier, tu aurais fini le cours.
Tu aurais probablement mieux codé ce que tu nous as montré ce matin et jamais la question.