Probléme VBA MSGBOX + varoables
Résolu
roulio66
Messages postés
8
Statut
Membre
-
eriiic Messages postés 25847 Statut Contributeur -
eriiic Messages postés 25847 Statut Contributeur -
Bonjour, sa fait quelque jour que j'ai commencer à développer sur du VBA pour mon travail mais je rencontre un problème au quel je n'arrive pas a trouver de réponse
je voudrais utiliser un MSGBOX (fonction) avec comme message 2 variable
j'arrive à le faire avec juste un MSGBOX traditionnel mais pas en mode fonction
voila comment ce présent la chose:
merci (je suis navré si mon programme est mal construit je débute)
je voudrais utiliser un MSGBOX (fonction) avec comme message 2 variable
j'arrive à le faire avec juste un MSGBOX traditionnel mais pas en mode fonction
voila comment ce présent la chose:
Sub salade1() ' ' ' 'Déclaration des variables Dim question As String, salade1 As String, salade2 As String, salade3 As String 'Valeurs des variables question = Worksheets("feuil3").[A31] salade1 = Worksheets("feuil3").[C4] salade2 = Worksheets("feuil3").[C5] salade3 = Worksheets("feuil3").[C6] ' if MsgBox ([question & salade1 & "?"][, vbyesno]) = vbyes them 'active feuiil2 Sheets(2).Select ActiveSheet.Cells(Rows.Count, "A").End(xlUp)(2).Select 'désignation article With ActiveCell .Value = "BAG 1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'composition ActiveSheet.Cells(Rows.Count, "B").End(xlUp)(2).Select With ActiveCell .Value = "SALADE 1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'detail Sheets(2).Select ActiveSheet.Cells(Rows.Count, "c").End(xlUp)(2).Select With ActiveCell .Value = salade1 .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'quantiter ActiveSheet.Cells(Rows.Count, "D").End(xlUp)(2).Select With ActiveCell .Value = "1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With End If End Sub
merci (je suis navré si mon programme est mal construit je débute)
A voir également:
- Probléme VBA MSGBOX + varoables
- Excel compter cellule couleur sans vba - Guide
- Vba ouvrir un fichier excel avec chemin ✓ - Forum VB / VBA
- Dépassement de capacité vba ✓ - Forum Excel
- Incompatibilité de type vba ✓ - Forum VB / VBA
- Erreur 13 incompatibilité de type VBA excel ✓ - Forum Excel
3 réponses
Bonsoir Roulio, bonsoir le forum,
Évite de nommer ta madcro avec le même nom qu'une de tes variables, ça pourrait planter...
Je me demande aussi si tu ne devrais pas ajouter une espace entre question & salade1 (question & " " & salade1).
Ton code modifié :
Évite de nommer ta madcro avec le même nom qu'une de tes variables, ça pourrait planter...
Je me demande aussi si tu ne devrais pas ajouter une espace entre question & salade1 (question & " " & salade1).
Ton code modifié :
Sub salade() 'Déclaration des variables Dim F2 As Worksheet Dim F3 As Worksheet Dim question As String, salade1 As String, salade2 As String, salade3 As String Set F2 = Sheets(2) Set F3 = Sheets("Feuil3") 'Valeurs des variables question = F3.Range("A31").Value salade1 = F3.Range("C4").Value salade2 = F3.Range("C5").Value salade3 = F3.Range("C6").Value ' If MsgBox(question & salade1 & "?", vbYesNo) = vbYes Then With F2.Cells(Application.Rows.Count, 1).End(xlUp)(2) 'désignation article .Value = "BAG 1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'composition With F2.Cells(Application.Rows.Count, 2).End(xlUp)(2) .Value = "SALADE 1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'detail With F2.Cells(Application.Rows.Count, 3).End(xlUp)(2) .Value = salade1 .Borders.Value = 1 .Interior.ColorIndex = 0 End With 'quantiter With F2.Cells(applicationRows.Count, 4).End(xlUp)(2) .Value = "1" .Borders.Value = 1 .Interior.ColorIndex = 0 End With End If End Sub
je remplacerai bien ta ligne de test msgbox par celle-ci :
If MsgBox(question & salade1 & "?", vbYesNo) = vbYes Then