j'ai un userform avec des champs et des controles de dates
apr=E8s quelques recherches sur le forum et quelques fonctions, quelques
bonnes =E2mes m'ont aid=E9 en me donnant la possibilit=E9 de trouver
l'=E9cart en mois entre deux dates (je pr=E9cise un mois commenc=E9 est
comptabilis=E9)
ce nombre me permet de recopier autant de lignes ds la feuille excel
que le r=E9sultat trouv=E9
ex : lignes.value =3D6 donc 6 lignes recopi=E9es ds ma feuille
For i =3D 1 To li
num2 =3D Sheets("PRESENCES").Range("A25536").End(xlUp).Row + 1
Question : comment faire pour que je puisse int=E9grer les mois
concern=E9s et ce autant de fois que n=E9cessaire. Exemple 6 lignes
recopi=E9es car 6 mois =E9coul=E9s entre deux dates, donc ce que
j'aimerais c'est trouver une variable "mois" pour que je puisse ajouter
Range("J" & num2).Value =3D mavariablemois (qui biensur change 6 fois
comme pour l'exemple ci-dessus)
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
C'est pas du bricolage, c'est ce qu'il faut mettre. Explication : du 15/01/06 au 31/01/06 --> 1 mois, donc 1 ligne boucle du mois 1 au mois 1 + 1 (li) --> = 2 du 15/01/06 au 28/02/06 --> 2 mois, donc 2 lignes boucle du mois 1 au mois 1 + 2 (li) --> =3 .... Attention : du 15/12/06 au 31/01/07 --> il faudra tester la valeur de i mois 12 + 2 (li) --> *14* : il n'y a pas de mois 14
Je te laisse chercher ;-)
-- JLuc
valenza@agire74.fr avait soumis l'idée :
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en
plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février
ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
C'est pas du bricolage, c'est ce qu'il faut mettre.
Explication :
du 15/01/06 au 31/01/06 --> 1 mois, donc 1 ligne
boucle du mois 1 au mois 1 + 1 (li) --> = 2
du 15/01/06 au 28/02/06 --> 2 mois, donc 2 lignes
boucle du mois 1 au mois 1 + 2 (li) --> =3
....
Attention :
du 15/12/06 au 31/01/07 --> il faudra tester la valeur de i
mois 12 + 2 (li) --> *14* : il n'y a pas de mois 14
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
C'est pas du bricolage, c'est ce qu'il faut mettre. Explication : du 15/01/06 au 31/01/06 --> 1 mois, donc 1 ligne boucle du mois 1 au mois 1 + 1 (li) --> = 2 du 15/01/06 au 28/02/06 --> 2 mois, donc 2 lignes boucle du mois 1 au mois 1 + 2 (li) --> =3 .... Attention : du 15/12/06 au 31/01/07 --> il faudra tester la valeur de i mois 12 + 2 (li) --> *14* : il n'y a pas de mois 14
Je te laisse chercher ;-)
-- JLuc
valenza
Je viens de me rendre compte d'une chose c'est qu'il n'incrémente que sur une année sij'ai un chevauchement entre deux années.....il s'arrete au dernier mois de l'année
ex : du 15/05/05 au 13/04/06 il me renseigne de mai à decembre 2005 puis j'ai une ligne sans rien pas de 2006
il me dit que l'indice n'appartient pas à la sélection
voilà mon petit probleme par rapport à l'énormité du reste (pour moi bien entendu)
quel bonheur ! merci bq je vs suis vraiment reconnaissant
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
un grand merci BV
avait soumis l'idée :
j'ai juste une question est ce que je dois faire comme ca ?
parce que j'ai deux variable i et ca me semble bizzare
bv
Salut, Tu fais ta boucle ainsi :
For i = Month([moisdedepart]) To Month([moisdedepart]) + li ... ... Next
[moisdedepart] est la variable ou le controle à partir duquel tu va recupérer la date
avait soumis l'idée :
un grand merci déjà pour votre compréhension et votre bienvei llance j'ai appliqué à la lettre et ça fonctionne ........ à moiti é (c'est un excellent départ)
j'ai maintenant mes mois qui apparaissent bien dans ma cellule mais en fait le nb de lignes donne le pas en partant de janvier et non en tenant compte du debut de ma date de départ
exemple : 24/03/06 au 21/05/06 nb de lignes à créer : 3 et la macro me met : janvier - février - mars et non pas mars - a vril - mai
comment faire pour qu'il m'écrive les mois à partir de ma date de départ est ce que dois transformer mon (i) ? est ce que je dois faire une formule pour qu'il me récupére le mois de ma date et qu'il parte de là ?
merci
BV
-- JLuc
-- JLuc
Je viens de me rendre compte d'une chose
c'est qu'il n'incrémente que sur une année
sij'ai un chevauchement entre deux années.....il s'arrete au dernier
mois de l'année
ex : du 15/05/05 au 13/04/06
il me renseigne de mai à decembre 2005 puis j'ai une ligne sans rien
pas de 2006
il me dit que l'indice n'appartient pas à la sélection
voilà mon petit probleme par rapport à l'énormité du reste (pour
moi bien entendu)
quel bonheur ! merci bq je vs suis vraiment reconnaissant
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en
plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février
ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
un grand merci
BV
valenza@agire74.fr avait soumis l'idée :
j'ai juste une question est ce que je dois faire comme ca ?
parce que j'ai deux variable i et ca me semble bizzare
bv
Salut,
Tu fais ta boucle ainsi :
For i = Month([moisdedepart]) To Month([moisdedepart]) + li
...
...
Next
[moisdedepart] est la variable ou le controle à partir duquel tu va
recupérer la date
valenza@agire74.fr avait soumis l'idée :
un grand merci déjà pour votre compréhension et votre bienvei llance
j'ai appliqué à la lettre et ça fonctionne ........ à moiti é
(c'est un excellent départ)
j'ai maintenant mes mois qui apparaissent bien dans ma cellule mais en
fait
le nb de lignes donne le pas en partant de janvier et non en tenant
compte du debut
de ma date de départ
exemple : 24/03/06 au 21/05/06
nb de lignes à créer : 3
et la macro me met : janvier - février - mars et non pas mars - a vril
- mai
comment faire pour qu'il m'écrive les mois à partir de ma date de
départ
est ce que dois transformer mon (i) ?
est ce que je dois faire une formule pour qu'il me récupére le mois
de ma date et qu'il parte de là ?
Je viens de me rendre compte d'une chose c'est qu'il n'incrémente que sur une année sij'ai un chevauchement entre deux années.....il s'arrete au dernier mois de l'année
ex : du 15/05/05 au 13/04/06 il me renseigne de mai à decembre 2005 puis j'ai une ligne sans rien pas de 2006
il me dit que l'indice n'appartient pas à la sélection
voilà mon petit probleme par rapport à l'énormité du reste (pour moi bien entendu)
quel bonheur ! merci bq je vs suis vraiment reconnaissant
ca fonctionne nickel sauf...... qu'il me compte toujours un mois en plus
ex du 15/01/06 au 31/01/06 j'ai janvier et février ex du 15/07/06 au 31
donc j'ai mis (je sais c'est du bricolage) :
For i = Month([Debut]) To Month([Debut]) + li - 1
un grand merci BV
avait soumis l'idée :
j'ai juste une question est ce que je dois faire comme ca ?
parce que j'ai deux variable i et ca me semble bizzare
bv
Salut, Tu fais ta boucle ainsi :
For i = Month([moisdedepart]) To Month([moisdedepart]) + li ... ... Next
[moisdedepart] est la variable ou le controle à partir duquel tu va recupérer la date
avait soumis l'idée :
un grand merci déjà pour votre compréhension et votre bienvei llance j'ai appliqué à la lettre et ça fonctionne ........ à moiti é (c'est un excellent départ)
j'ai maintenant mes mois qui apparaissent bien dans ma cellule mais en fait le nb de lignes donne le pas en partant de janvier et non en tenant compte du debut de ma date de départ
exemple : 24/03/06 au 21/05/06 nb de lignes à créer : 3 et la macro me met : janvier - février - mars et non pas mars - a vril - mai
comment faire pour qu'il m'écrive les mois à partir de ma date de départ est ce que dois transformer mon (i) ? est ce que je dois faire une formule pour qu'il me récupére le mois de ma date et qu'il parte de là ?
As ta regarder la derniere ligne avant le Next ? ;-)
Range("K" & num2).Value = My_Month(i *- decale* )
-- JLuc
valenza
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses
mais ca ne me saute pas encore aux yeux
BV
avait soumis l'idée :
merci JLuc pour ton aide je comprends la formule que tu as mise c'est déjà un début
mais apparemment il a toujours un pbm quand il arrive a decembre il me repete plusieurs fois decembre et ne porusuit pas sa course
As ta regarder la derniere ligne avant le Next ? ;-)
Range("K" & num2).Value = My_Month(i *- decale* )
-- JLuc
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues
de la soustraction
sinon il ne décale pas
mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais
fait de prog
j'enregistre des macros je bidouille un peu le code et j'apprends bq
avec vos réponses
mais ca ne me saute pas encore aux yeux
BV
valenza@agire74.fr avait soumis l'idée :
merci JLuc pour ton aide
je comprends la formule que tu as mise c'est déjà un début
mais apparemment il a toujours un pbm quand il arrive a decembre
il me repete plusieurs fois decembre et ne porusuit pas sa course
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses
mais ca ne me saute pas encore aux yeux
BV
avait soumis l'idée :
merci JLuc pour ton aide je comprends la formule que tu as mise c'est déjà un début
mais apparemment il a toujours un pbm quand il arrive a decembre il me repete plusieurs fois decembre et ne porusuit pas sa course
As ta regarder la derniere ligne avant le Next ? ;-)
Range("K" & num2).Value = My_Month(i *- decale* )
-- JLuc
JLuc
avait soumis l'idée :
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses
For i = Month([moisdedepart]) To Month([moisdedepart]) + li - 1 num2 = Sheets("PRESENCES").Range("A25536").End(xlUp).Row + 1
' D'une année sur l'autre
Merdum, :') je suis aller trop vite
If i > 12 Then decale = 12 'Pas i - 12
decale = i - 12 Else decale = 0 End If ' si i est sup à 12, decale vaut 12 sinon il vaut 0
'donc si i vaut 13, decale vaut 12 : My_Month(i - decale)=My_Month(13-12) Range("K" & num2).Value = My_Month(i - decale)
-- JLuc
valenza@agire74.fr avait soumis l'idée :
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues
de la soustraction
sinon il ne décale pas
mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais
fait de prog
j'enregistre des macros je bidouille un peu le code et j'apprends bq
avec vos réponses
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses
For i = Month([moisdedepart]) To Month([moisdedepart]) + li - 1 num2 = Sheets("PRESENCES").Range("A25536").End(xlUp).Row + 1
' D'une année sur l'autre
Merdum, :') je suis aller trop vite
If i > 12 Then decale = 12 'Pas i - 12
decale = i - 12 Else decale = 0 End If ' si i est sup à 12, decale vaut 12 sinon il vaut 0
'donc si i vaut 13, decale vaut 12 : My_Month(i - decale)=My_Month(13-12) Range("K" & num2).Value = My_Month(i - decale)
-- JLuc
valenza
sei un signore !!!!!!!! traduction = tu es un seigneur ou un Monsieur
BV
avait soumis l'idée :
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses
For i = Month([moisdedepart]) To Month([moisdedepart]) + li - 1 num2 = Sheets("PRESENCES").Range("A25536").End(xlUp).Row + 1
' D'une année sur l'autre
Merdum, :') je suis aller trop vite
If i > 12 Then decale = 12 'Pas i - 12
decale = i - 12 Else decale = 0 End If ' si i est sup à 12, decale vaut 12 sinon il vaut 0
'donc si i vaut 13, decale vaut 12 : My_Month(i - decale)=My_Month(13-12) Range("K" & num2).Value = My_Month(i - decale)
-- JLuc
sei un signore !!!!!!!!
traduction = tu es un seigneur ou un Monsieur
BV
valenza@agire74.fr avait soumis l'idée :
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues
de la soustraction
sinon il ne décale pas
mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais
fait de prog
j'enregistre des macros je bidouille un peu le code et j'apprends bq
avec vos réponses
sei un signore !!!!!!!! traduction = tu es un seigneur ou un Monsieur
BV
avait soumis l'idée :
oui mais je ne comprends pas
si mon nb de lignes est sup à 12 il decale du nombre de lignes issues de la soustraction sinon il ne décale pas mais je ne sais pas ce que tu veux me faire comprendre je n'ai jamais fait de prog j'enregistre des macros je bidouille un peu le code et j'apprends bq avec vos réponses