Je cherche à créer une macro en VBA pour incrémenter du texte dans une plage
définie A1:B9000.
J'ai un tableau de 2 colonnes, et dans les colonnes A et B, je voudrais
qu'une macro m'incrémente le texte trouvé en 1er jusqu'au suivant.
Par ex, j'ai "01" en A1, puis jusqu'à A160, je n'ai plus rien, et en A161,
j'ai "02"; donc je cherche à avoir une macro qui m'incrémente "01" jusqu'en
A160, puis à partir de A161, ça m'incrémente "02" jusqu'à trouvé une autre
valeur, et à ce moment là, ça stoppe l'incrémentation de "02", puis commence
l'incrémentation de la nouvelle valeur.
Et pareil pour la colonne B; en B1, j'ai "DIVERS", et aprés, je n'ai plus
rien jusqu'à la cellule B26 où j'ai "AUTRES"; dans ce cas, la macro
m'incrémente "DIVERS" jusqu'en B25, puis commence l'incrémentation de
"AUTRES" jusqu'à butter sur une nouvelle donnée; et ce jusqu'à la fin de la
plage définie (A1:B9000).
J'ai essayé de faire quelque chose avec l'enregistreur de maco, mais je
n'arrive pas à définir la condition 'si il y a une nouvelle valeur, alors
incrémenter la nouvelle'.
Merci d'avance!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l'année pour répondre.../
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
isabelle
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
isabelle
Bonjour,
Je cherche à créer une macro en VBA pour incrémenter du texte dans une plage définie A1:B9000. J'ai un tableau de 2 colonnes, et dans les colonnes A et B, je voudrais qu'une macro m'incrémente le texte trouvé en 1er jusqu'au suivant.
Par ex, j'ai "01" en A1, puis jusqu'à A160, je n'ai plus rien, et en A161, j'ai "02"; donc je cherche à avoir une macro qui m'incrémente "01" jusqu'en A160, puis à partir de A161, ça m'incrémente "02" jusqu'à trouvé une autre valeur, et à ce moment là, ça stoppe l'incrémentation de "02", puis commence l'incrémentation de la nouvelle valeur. Et pareil pour la colonne B; en B1, j'ai "DIVERS", et aprés, je n'ai plus rien jusqu'à la cellule B26 où j'ai "AUTRES"; dans ce cas, la macro m'incrémente "DIVERS" jusqu'en B25, puis commence l'incrémentation de "AUTRES" jusqu'à butter sur une nouvelle donnée; et ce jusqu'à la fin de la plage définie (A1:B9000).
J'ai essayé de faire quelque chose avec l'enregistreur de maco, mais je n'arrive pas à définir la condition 'si il y a une nouvelle valeur, alors incrémenter la nouvelle'.
Merci d'avance!
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
isabelle
Bonjour,
Je cherche à créer une macro en VBA pour incrémenter du texte dans une plage
définie A1:B9000.
J'ai un tableau de 2 colonnes, et dans les colonnes A et B, je voudrais
qu'une macro m'incrémente le texte trouvé en 1er jusqu'au suivant.
Par ex, j'ai "01" en A1, puis jusqu'à A160, je n'ai plus rien, et en A161,
j'ai "02"; donc je cherche à avoir une macro qui m'incrémente "01" jusqu'en
A160, puis à partir de A161, ça m'incrémente "02" jusqu'à trouvé une autre
valeur, et à ce moment là, ça stoppe l'incrémentation de "02", puis commence
l'incrémentation de la nouvelle valeur.
Et pareil pour la colonne B; en B1, j'ai "DIVERS", et aprés, je n'ai plus
rien jusqu'à la cellule B26 où j'ai "AUTRES"; dans ce cas, la macro
m'incrémente "DIVERS" jusqu'en B25, puis commence l'incrémentation de
"AUTRES" jusqu'à butter sur une nouvelle donnée; et ce jusqu'à la fin de la
plage définie (A1:B9000).
J'ai essayé de faire quelque chose avec l'enregistreur de maco, mais je
n'arrive pas à définir la condition 'si il y a une nouvelle valeur, alors
incrémenter la nouvelle'.
veut tu dire par "incrémente" recopier vers le bas ?
isabelle
Bonjour,
Je cherche à créer une macro en VBA pour incrémenter du texte dans une plage définie A1:B9000. J'ai un tableau de 2 colonnes, et dans les colonnes A et B, je voudrais qu'une macro m'incrémente le texte trouvé en 1er jusqu'au suivant.
Par ex, j'ai "01" en A1, puis jusqu'à A160, je n'ai plus rien, et en A161, j'ai "02"; donc je cherche à avoir une macro qui m'incrémente "01" jusqu'en A160, puis à partir de A161, ça m'incrémente "02" jusqu'à trouvé une autre valeur, et à ce moment là, ça stoppe l'incrémentation de "02", puis commence l'incrémentation de la nouvelle valeur. Et pareil pour la colonne B; en B1, j'ai "DIVERS", et aprés, je n'ai plus rien jusqu'à la cellule B26 où j'ai "AUTRES"; dans ce cas, la macro m'incrémente "DIVERS" jusqu'en B25, puis commence l'incrémentation de "AUTRES" jusqu'à butter sur une nouvelle donnée; et ce jusqu'à la fin de la plage définie (A1:B9000).
J'ai essayé de faire quelque chose avec l'enregistreur de maco, mais je n'arrive pas à définir la condition 'si il y a une nouvelle valeur, alors incrémenter la nouvelle'.
Merci d'avance!
géjoun
isabelle nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?
Merci!
-- géjoun
/Enlever l'année pour répondre.../
isabelle <hoHoho@hohoHo> nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à
"03"...etc...
C'est pas comme ça qu'on dit "incrémenter"?
Merci!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l'année pour répondre.../
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?
Merci!
-- géjoun
/Enlever l'année pour répondre.../
isabelle
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
isabelle nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?
Merci!
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général,
son inconvénient c'est qu'il faut traiter une colonne à la fois,
son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc()
Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8)
dp = plg.Item(1)
For Each c In plg
If c = 0 Then
Range(c.Address) = dp
Else
dp = c
End If
Next
End Sub
isabelle
isabelle <hoHoho@hohoHo> nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à
"03"...etc...
C'est pas comme ça qu'on dit "incrémenter"?
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
isabelle nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?
Merci!
géjoun
isabelle nous expliquait:
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
Bonsoir,
Ca ne fait pas tout d'un coup, il faut sélectionner les plages, mais ça me va, et puis, si je veux la perfectionner, ça me permettra de me pencher dessus!
Merci!
-- géjoun
/Enlever l'année pour répondre.../
isabelle <hoHoho@hohoHo> nous expliquait:
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande,
elle est par contre général, son inconvénient c'est qu'il faut
traiter une colonne à la fois,
son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc()
Set plg = Application.InputBox(prompt:="Sélectionner la plage à
traiter", Type:=8)
dp = plg.Item(1)
For Each c In plg
If c = 0 Then
Range(c.Address) = dp
Else
dp = c
End If
Next
End Sub
isabelle
Bonsoir,
Ca ne fait pas tout d'un coup, il faut sélectionner les plages, mais ça me
va, et puis, si je veux la perfectionner, ça me permettra de me pencher
dessus!
Merci!
--
géjoun
dam-mail2006@ifrance.com
/Enlever l'année pour répondre.../
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
Bonsoir,
Ca ne fait pas tout d'un coup, il faut sélectionner les plages, mais ça me va, et puis, si je veux la perfectionner, ça me permettra de me pencher dessus!
Merci!
-- géjoun
/Enlever l'année pour répondre.../
Clément Marcotte
Bonjour Isabelle
Pourrais-tu me faire connaître ton adresse électronique, j'aurais une faveur à te demander.
J'ai mis la mienne là:
http://cjoint.com/?euwwp2bEZL
P.S. Pour JPS, c'est une faveur "informatique"
"isabelle" a écrit dans le message de news:
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
isabelle nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?
Merci!
Bonjour Isabelle
Pourrais-tu me faire connaître ton adresse électronique, j'aurais une faveur
à te demander.
J'ai mis la mienne là:
http://cjoint.com/?euwwp2bEZL
P.S. Pour JPS, c'est une faveur "informatique"
"isabelle" <hoHoho@hohoHo> a écrit dans le message de news:
erMifxIZGHA.4916@TK2MSFTNGP04.phx.gbl...
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est
par contre général,
son inconvénient c'est qu'il faut traiter une colonne à la fois,
son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc()
Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter",
Type:=8)
dp = plg.Item(1)
For Each c In plg
If c = 0 Then
Range(c.Address) = dp
Else
dp = c
End If
Next
End Sub
isabelle
isabelle <hoHoho@hohoHo> nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à
"03"...etc...
C'est pas comme ça qu'on dit "incrémenter"?
Pourrais-tu me faire connaître ton adresse électronique, j'aurais une faveur à te demander.
J'ai mis la mienne là:
http://cjoint.com/?euwwp2bEZL
P.S. Pour JPS, c'est une faveur "informatique"
"isabelle" a écrit dans le message de news:
bonjour,
j'ai cette macro, tirer de mon perso, qui fait ce que tu demande, elle est par contre général, son inconvénient c'est qu'il faut traiter une colonne à la fois, son avantage est qu'on peut l'utiliser dans plusieur situation.
Sub Remplir_blanc() Set plg = Application.InputBox(prompt:="Sélectionner la plage à traiter", Type:=8) dp = plg.Item(1) For Each c In plg If c = 0 Then Range(c.Address) = dp Else dp = c End If Next End Sub
isabelle
isabelle nous expliquait:
bonjour,
veut tu dire par "incrémente" recopier vers le bas ?
Bonjour,
Oui oui, c'est bien ça, recopier "1" jusqu'à "02", puis "02" jusqu'à "03"...etc... C'est pas comme ça qu'on dit "incrémenter"?