Programmation en VBA

chuyensinh Messages postés 4 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 25 mars 2012 - 25 mars 2012 à 19:58
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 25 mars 2012 à 21:38
Bonjour,
Quelqu'un pourrais m'aider de faire le programme suivant, svp:
Créer un macro avec une ou plusieurs boucles de type "DO WHILE" qui demander 2 valeurs: la 1er valeur comprise entre 1 et 4, la 2eme valeur comprise entre 1 et 3
Si pour chacune des valeurs, la valeur saisie ne répond pas au critère, le programme devra afficher le message: "la valeur saisie n'est pas correcte" et demander a nouveau cette valeur jusqu'au respect des contraintes.
Cette macro va inscrire les chiffres entre 1 a 100 en partant de la cellule "A1" de la feuille 1 en se décalant pour chaque valeur du nombre de la lignes correspondant a la première valeur demandée et du nombre de colonnes correspondant a la 2eme valeur demandée

7 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mars 2012 à 20:31
Bonjour,
Ton message est incompréhensible, notamment du fait dse :
Créer un macro avec une ou plusieurs boucles de type "DO WHILE" qui demander 2 valeurs

Mais pas uniquement.
Je crois qu'il serait bien que tu envisages d'exposer à nouveau ta question, en te montrant très technique dans cet exposé.

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
25 mars 2012 à 20:37
Bonjour,

Ça sent l'exo ton message.

Sur ce, je te conseil la lecture du point 1 de ma signature.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
chuyensinh Messages postés 4 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 25 mars 2012
25 mars 2012 à 20:46
desole, je voulais dire, le macro va demander utilisateurs qui entre 2 valeurs, la premiere entre 1 et 4(appel valeur1), la 2ieme entre 1 et 3 (valeur2)

cette macro va ecrire sur la feuille excel des chiffres de 1 a 100 en partant de A1 par exemple A1=1, et pour le numero 2, il faut decalant de valeur1 lignes et de valeur2 colonne, par exemple: valeur1 = 2, valeur2=2, dont le numero 2 va ecrire dans la cellule C3
0
chuyensinh Messages postés 4 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 25 mars 2012
25 mars 2012 à 20:48
oui c'est exercice que je dois faire
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
25 mars 2012 à 20:57
Bonjour,

Et tu bloques sur quoi ? Car je pense que tu n'as pas lu le point 1 de ma signature.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
chuyensinh Messages postés 4 Date d'inscription vendredi 1 février 2008 Statut Membre Dernière intervention 25 mars 2012
25 mars 2012 à 21:09
je suis bloque sur le 2eme point d'exo, ce que j'ai fait:

Sub Macro3()
Sheets("Feuil1").Select

Dim valeur1 As Long
Dim valeur2 As Long
Dim compteur As Long
Dim i As Integer
Dim j As Integer
valeur1 = InputBox("Entrez un chiffre entre 1 et 4: ")
compteur = 1
Do While valeur1 <> "1" And valeur1 <> "2" And valeur1 <> "3" And valeur1 <> "4"

MsgBox ("la valeur saisie n'est pas correcte")
valeur1 = InputBox("Re-entrez un chiffre entre 1 et 4: ")
compteur = compteur + 1
Loop
MsgBox valeur1

valeur2 = InputBox("Entrez un chiffre entre 1 et 3: ")
compteur = 1
Do While valeur2 <> "1" And valeur2 <> "2" And valeur2 <> "3"

MsgBox ("la valeur saisie n'est pas correcte")
valeur2 = InputBox("Re-entrez un chiffre entre 1 et 3: ")
compteur = compteur + 1
Loop
MsgBox valeur2
compteur = 1
Do

For i = 0 To valeur1
For j = 0 To valeur2
Range("A1").Offset(i, j) = compteur
compteur = compteur + 1
Next j
Next i
Loop While compteur > 100
End Sub
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
25 mars 2012 à 21:38
Bonjour,
Un exo ?
Dans ce cas (c'est là ma religion), voilà mon aide :
Ouvre ton aide VBA sur Application.InputBox ===>> lis tout ===>> utilise
Application.Inputbox n'est pas Inputbox.
Et tout cela (par exemple) :
Dim valeur1 As Long
valeur1 = InputBox("Entrez un chiffre entre 1 et 4: ")
Do While valeur1 <> "1" And valeur1 <> "2" And valeur1 <> "3" And valeur1 <> "4"
  MsgBox ("la valeur saisie n'est pas correcte")
  valeur1 = InputBox("Re-entrez un chiffre entre 1 et 4: ")
  compteur =  compteur + 1
Loop

s'exprime en un seul appel, en boucle, de Application.InputBox. Et avec une seule ligne de code dans la boucle !

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
Rejoignez-nous