Comment suivant une date remettre à 1 une incrémentation en vba
coupidon
Messages postés
98
Statut
Membre
-
Frenchie83 Messages postés 2254 Statut Membre -
Frenchie83 Messages postés 2254 Statut Membre -
Bonjour,
Je me fait un projet, j'ai une feuille avec une Base de donnée, j'ai un userform qui permet une fois enregistrer les données incrément un à chaque saisi sur la cellule A8.
Mais j'aimerais suivant une année nouvelle que l'incrémentation reprenne à 1 à partir de la nouvelle année.
donc sur la feuille de Base de Donnée, aprés saisi avec l'userform.
quand la ligne est comme tel en
A8 B8
se mettra à 1 quand 1 02/03/2017 nouvelle année
2 05/10/2016 même année
dois se remettre à 1 02/02/2016 quand nouvelle année
3 25/04/2015 même année
2 12/03/2015 même année
première saisi 1 01/02/2015 même année
pour résumer, tant que l'année change pas cela s'incrément normalement, mais quand l'année change le premier reprenne l'ordre à 1 puis incrément normalement jusqu'à une prochaine nouvelle année, et, ainsi de suite.
Est-ce possible à réaliser.....?
voici mon projet : https://www.cjoint.com/c/FEqlEW6SFa0
Je me fait un projet, j'ai une feuille avec une Base de donnée, j'ai un userform qui permet une fois enregistrer les données incrément un à chaque saisi sur la cellule A8.
Mais j'aimerais suivant une année nouvelle que l'incrémentation reprenne à 1 à partir de la nouvelle année.
donc sur la feuille de Base de Donnée, aprés saisi avec l'userform.
quand la ligne est comme tel en
A8 B8
se mettra à 1 quand 1 02/03/2017 nouvelle année
2 05/10/2016 même année
dois se remettre à 1 02/02/2016 quand nouvelle année
3 25/04/2015 même année
2 12/03/2015 même année
première saisi 1 01/02/2015 même année
pour résumer, tant que l'année change pas cela s'incrément normalement, mais quand l'année change le premier reprenne l'ordre à 1 puis incrément normalement jusqu'à une prochaine nouvelle année, et, ainsi de suite.
Est-ce possible à réaliser.....?
voici mon projet : https://www.cjoint.com/c/FEqlEW6SFa0
A voir également:
- Comment suivant une date remettre à 1 une incrémentation en vba
- Comment remettre a zero un pc - Guide
- Remettre clavier en azerty - Guide
- Remettre une story archivée instagram - Guide
- Comment remettre la barre des tâches à la normale ? - Guide
- Remettre l'ecran a l'endroit - Guide
5 réponses
Bonjour
remplacez
par
Cdlt
remplacez
[A9] = [A10] + 1
par
If Year(Cells(9, 2)) <> Year(Cells(10, 2)) Then [A9] = 1 Else [A9] = [A10] + 1
Cdlt
coupidon
Messages postés
98
Statut
Membre
1
génial cool sa fonctionne, bravo pour ta maitrise en VBA
Comme tu as mon projet en main, lol
et que tu est super doué, j'aimerais te demander comment on fait pour afficher un résultat dans une combobox après un calcul. Et que cela s'affiche sur l'userform comme tu as fait pour le prix, mais sur une nouvelle comboBox11 par exemple.
J'ai tester plein de truc mais sa veux pas s'afficher, pourtant je me suis inspiré de ton principe avec la combobox1.
en gros j'aimerais que l'on fasse l'addition du résultat que donne la (textbox10+textbox11)-textbox2 qui me donnerais le restant de la somme à devoir mais qu'elle apparaisse comme sur la textbox11 qu'il faut créer ?
accepte tu de m'aider?
et que tu est super doué, j'aimerais te demander comment on fait pour afficher un résultat dans une combobox après un calcul. Et que cela s'affiche sur l'userform comme tu as fait pour le prix, mais sur une nouvelle comboBox11 par exemple.
J'ai tester plein de truc mais sa veux pas s'afficher, pourtant je me suis inspiré de ton principe avec la combobox1.
en gros j'aimerais que l'on fasse l'addition du résultat que donne la (textbox10+textbox11)-textbox2 qui me donnerais le restant de la somme à devoir mais qu'elle apparaisse comme sur la textbox11 qu'il faut créer ?
accepte tu de m'aider?
Bonjour
J'ai recombiné les "sub Textbox10_KeyPress" avec "sub Textbox10_change" pour n'en faire qu'une "sub Textbox10_change "
Si vous rajouter une textbox(et non pas une combobox) pour moi cela devenait la TextBox12 et appliquez la formule qui récupère les valeurs des cellules à inclure dans la formule de la ligne 8, ce qui fait
TextBox12 = [G8] + [F8] - [I8] (rectifiez si je me trompe de cellule)
Cdlt
J'ai recombiné les "sub Textbox10_KeyPress" avec "sub Textbox10_change" pour n'en faire qu'une "sub Textbox10_change "
Si vous rajouter une textbox(et non pas une combobox) pour moi cela devenait la TextBox12 et appliquez la formule qui récupère les valeurs des cellules à inclure dans la formule de la ligne 8, ce qui fait
TextBox12 = [G8] + [F8] - [I8] (rectifiez si je me trompe de cellule)
Private Sub Textbox10_change() 'KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
' Cette procèdure permet si la valeur n'est pas comprise entre 0 et 9 et qu'elle n'est pas un backspace
'If InStr(1, "0123456789", Chr(KeyAscii)) = 0 And KeyAscii <> 8 Then
'MsgBox "Caractère non autorisé"
'KeyAscii = 0
'End If
[G8] = TextBox10
TextBox12 = [G8] + [F8] - [I8]
[J8] = TextBox2.Value
'End Sub
'Private Sub Textbox10_change()
' cette procédure permet de renseigner la cellule G8 en fonction de la donnée
' écrite dans le formulaire à la parti Kilomètres
Sheets("BASE de DONNEE").Select
[G8] = TextBox10.Value
If [G8] < 10 Then
[H8] = 0
ElseIf [G8] <= 20 Then
[H8] = [G8] * 0.18
ElseIf [G8] <= 40 Then
[H8] = [G8] * 0.2
ElseIf [G8] <= 80 Then
[H8] = [G8] * 0.22
ElseIf [G8] > 80 Then
[H8] = [G8] * 0.3
End If
End Sub
Cdlt
bonjour frenchie83 merci pour ton aide
alors c'est pas tout à fait cela, sa me déconcerte le VBA j'arrive pas à saisir le principe.
En gros comment afficher le résultat dans une textbox12 par exemple la valeur H8 qui à était calculer avec les conditions if? sur la textbox10
je comprend pas comment une textbox affiche un résultat quelconque quand on fait un calcul. Sa semble simple mais cela ne fonctionne pas avec moi ? lol
le résultat de la textbox10, comment la récupérer pour qu'elle s'affiche sur un textbox afin de voir si le calcul est correcte....
en gros voilà la question
alors c'est pas tout à fait cela, sa me déconcerte le VBA j'arrive pas à saisir le principe.
En gros comment afficher le résultat dans une textbox12 par exemple la valeur H8 qui à était calculer avec les conditions if? sur la textbox10
je comprend pas comment une textbox affiche un résultat quelconque quand on fait un calcul. Sa semble simple mais cela ne fonctionne pas avec moi ? lol
le résultat de la textbox10, comment la récupérer pour qu'elle s'affiche sur un textbox afin de voir si le calcul est correcte....
en gros voilà la question
RE
Si j'ai bien compris.
Ajoutez en dernière ligne de Private Sub Textbox10_change()
Cdlt
Si j'ai bien compris.
Ajoutez en dernière ligne de Private Sub Textbox10_change()
TextBox12 = [H8]
Cdlt
on affiche a la fin d'une procédure comme tu as fait Je mets le résultat à la fin, parce qu'il faut bien attendre que les calculs soient faits.
Explication dans l'ordre chronologique:
La textbox10 est recopiée dans la cellule G8
H8 est le résultat de G8 multiplié par un coefficient.
Comme il nous faut récupérer ce résultat, on le chercher directement dans H8 que l'on met dans la textbox12.
Explication dans l'ordre chronologique:
La textbox10 est recopiée dans la cellule G8
H8 est le résultat de G8 multiplié par un coefficient.
Comme il nous faut récupérer ce résultat, on le chercher directement dans H8 que l'on met dans la textbox12.
cela deviens nettement plus clair, vous avez raison.. merci du coup de main c'est du grand art...
encore un petit truc ou astuce j'essais de ranger mes textbox et combobox pour qu'avec la tabulation ne parte pas de haut au milieu à gauche à droite...
vous faites comment, pour que cela soit chronologique pour l'encodage par exemple
encore un petit truc ou astuce j'essais de ranger mes textbox et combobox pour qu'avec la tabulation ne parte pas de haut au milieu à gauche à droite...
vous faites comment, pour que cela soit chronologique pour l'encodage par exemple
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question