Macro visual Basic sur excel
Fermé
didwin
Messages postés
56
Date d'inscription
vendredi 30 mars 2007
Statut
Membre
Dernière intervention
30 septembre 2015
-
21 déc. 2009 à 09:43
didwin - 11 janv. 2010 à 11:21
didwin - 11 janv. 2010 à 11:21
Bonjour,
Je voudrais faire un échéancier sur excel cu que c est un tableur cela devrait être simple. Je voudrais un style zonelist ou tu indique le montant que tu régles et le systéme doit être capable de ranger cette information en D2 + la date de réglement mais si D2 est déja pris il doit alors la mettre en d3 etc
Merci par avance de votre aide
Didwin
Je voudrais faire un échéancier sur excel cu que c est un tableur cela devrait être simple. Je voudrais un style zonelist ou tu indique le montant que tu régles et le systéme doit être capable de ranger cette information en D2 + la date de réglement mais si D2 est déja pris il doit alors la mettre en d3 etc
Merci par avance de votre aide
Didwin
A voir également:
- Macro visual Basic sur excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Visual basic - Télécharger - Langages
- Liste déroulante excel - Guide
- Microsoft 365 basic - Accueil - Microsoft Office
- Comment calculer la moyenne sur excel - Guide
6 réponses
ptidavid
Messages postés
1273
Date d'inscription
jeudi 3 août 2006
Statut
Membre
Dernière intervention
16 février 2010
104
22 déc. 2009 à 16:34
22 déc. 2009 à 16:34
Bonjour à toi,
Je ne comprends pas très bien ton problème, peux-tu donner un exemple?
Je ne comprends pas très bien ton problème, peux-tu donner un exemple?
jejelefou
Messages postés
304
Date d'inscription
mercredi 21 mai 2008
Statut
Membre
Dernière intervention
18 février 2016
42
28 déc. 2009 à 17:01
28 déc. 2009 à 17:01
Bonjour,
ça ne serait pas plus simple que tu regardes la 1ere case de vide de la colonne B et avec ta souris cliquer dessus?
Parce du code pour voir si une case est vide, c'est riche.
Sinon j'ai tres mal compris ta requette. Dans ce dernier cas Pourrais tu nous eclaircir un peut mieux.
cordialement
ça ne serait pas plus simple que tu regardes la 1ere case de vide de la colonne B et avec ta souris cliquer dessus?
Parce du code pour voir si une case est vide, c'est riche.
Sinon j'ai tres mal compris ta requette. Dans ce dernier cas Pourrais tu nous eclaircir un peut mieux.
cordialement
moiced59
Messages postés
1145
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
18 août 2014
60
28 déc. 2009 à 17:10
28 déc. 2009 à 17:10
re
quelque chose com ca serais le plus simple
i=1
miseajour = false
do until i = 1 or miseajour = false
if cells(i,4).value <>"" then
...
...
...
miseajour = true
else
i = i+1
end if
loop
quelque chose com ca serais le plus simple
i=1
miseajour = false
do until i = 1 or miseajour = false
if cells(i,4).value <>"" then
...
...
...
miseajour = true
else
i = i+1
end if
loop
michel_m
Messages postés
16602
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 313
28 déc. 2009 à 17:37
28 déc. 2009 à 17:37
Bonjour
essaies cette macro qui te demande le montant puis la date de prise en compte
le montant s'écrit dans la colonne D et la date dans la colonne E à la 1° ligne vide
Pour installer (XL<2007)
fais un "copier" de cette macro
va dans VBE avec Alt+F11
insertion-module
coller
retourne sur ta feuille
dans barre d'outils formulaire sélectionne le bouton et dessine le sur la feuille
et affecte le à la macro
essaies cette macro qui te demande le montant puis la date de prise en compte
le montant s'écrit dans la colonne D et la date dans la colonne E à la 1° ligne vide
Sub rembourser() Dim montant, jour, ligvide As Integer montant = InputBox("montant à inscrire") If montant = "" Or Not IsNumeric(montant) Then Exit Sub jour = InputBox("date de prise en compte sous la forme jj/mm/aa") If Not jour Like "##/##/##" Then Exit Sub ligvide = Range("D1000").End(xlUp).Row + 1 Cells(ligvide, 4) = montant Cells(ligvide, 5) = Format(jour, "dd/mm/yy") End Sub
Pour installer (XL<2007)
fais un "copier" de cette macro
va dans VBE avec Alt+F11
insertion-module
coller
retourne sur ta feuille
dans barre d'outils formulaire sélectionne le bouton et dessine le sur la feuille
et affecte le à la macro
michel_m
Messages postés
16602
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 313
>
didwin
8 janv. 2010 à 11:03
8 janv. 2010 à 11:03
bonjour,
je regarde ca cet aprèm: un peu de patience... merci ;-)
je regarde ca cet aprèm: un peu de patience... merci ;-)
didwin
>
michel_m
Messages postés
16602
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
8 janv. 2010 à 13:50
8 janv. 2010 à 13:50
Michel,
Juste une petite question, sur ton premier programme cela fonctionne bien mais si je voulais que la date et la somme soient incrite sur ma feuil2 (appelé échéancier) que dois-je changer.
Merci par avance
Didwin
Juste une petite question, sur ton premier programme cela fonctionne bien mais si je voulais que la date et la somme soient incrite sur ma feuil2 (appelé échéancier) que dois-je changer.
Merci par avance
Didwin
tompols
Messages postés
1273
Date d'inscription
jeudi 29 juillet 2004
Statut
Contributeur
Dernière intervention
25 novembre 2013
435
>
didwin
8 janv. 2010 à 15:04
8 janv. 2010 à 15:04
Bonjour,
les plus simple serait d'executer le code en étant déjà sur la feuille voulue (ce code fonctionne sur la feuille active)
Sinon, modifier comme ceci :
les plus simple serait d'executer le code en étant déjà sur la feuille voulue (ce code fonctionne sur la feuille active)
Sinon, modifier comme ceci :
Sub rembourser() Dim montant, jour, ligvide As Integer montant = InputBox("montant à inscrire") If montant = "" Or Not IsNumeric(montant) Then Exit Sub jour = InputBox("date de prise en compte sous la forme jj/mm/aa") If Not jour Like "##/##/##" Then Exit Sub Sheets("échéancier").Activate ligvide = Range("D1000").End(xlUp).Row + 1 Cells(ligvide, 4) = montant Cells(ligvide, 5) = Format(jour, "dd/mm/yy") End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
moiced59
Messages postés
1145
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
18 août 2014
60
28 déc. 2009 à 17:42
28 déc. 2009 à 17:42
et bien sur mise a jour du champ ou tu rentre t info tu met le code suivant:
i=1
miseajour = false
do until i = 1 or miseajour = false
if worsheets"nom de ta feuille".cells(i,4).value ="" then
worsheets"nom de ta feuille".cells(i,4).value = montant tapé je ne c pas ou
miseajour = true
else
i = i+1
end if
loop
i=1
miseajour = false
do until i = 1 or miseajour = false
if worsheets"nom de ta feuille".cells(i,4).value ="" then
worsheets"nom de ta feuille".cells(i,4).value = montant tapé je ne c pas ou
miseajour = true
else
i = i+1
end if
loop
moiced59
Messages postés
1145
Date d'inscription
samedi 15 novembre 2008
Statut
Membre
Dernière intervention
18 août 2014
60
28 déc. 2009 à 18:18
28 déc. 2009 à 18:18
i=1
miseajour = false
do until i = 1 or miseajour = false
if worsheets"feuil2".cells(i,4).value ="" then
worsheets"feuil2".cells(i,4).value = montant tapé je ne c pas ou
miseajour = true
else
i = i+1
end if
loop
miseajour = false
do until i = 1 or miseajour = false
if worsheets"feuil2".cells(i,4).value ="" then
worsheets"feuil2".cells(i,4).value = montant tapé je ne c pas ou
miseajour = true
else
i = i+1
end if
loop
28 déc. 2009 à 15:58
Alors je vais essayer d'être clair dans mon exemple : voila j ai un prêt de 4500 euros . Ce mois, je veux enregistrer un paiement de 150 euros donc cette somme dois s incrire (exemple en b5) Dans la colonne B vont figurer tous mes remboursements. Donc le premier va aller dans b5 alors je voudrais une petite macro qui indique que si B5 est déja pris qu il mette l'information en B6 et ainsi de suite.
J espère que tu arrives a voir ce que je veux dire sinon recontacte moi.
Bonnes fetes de fin d années
Didwin