récupérer données numériques et libellés dans la feuille suivante
7 réponses
didiersee
Bonjour, j'ai deux colonnes, celle de gauche contient des cellules
avec des libellés (texte) et aussi des cellules vides, celle de droite
contient des cellules avec du texte des cellules vides et des cellules
avec des valeurs numériques.
J'aimerai que dans une autre feuille (la suivante par
exemple)reprennent uniquement les cellules de la colonne de droite
dont les valeurs sont uniquement numériques ainsi que les libellés des
cellules qui sont juste à côté des cellules numériques.
par exemple:
en A1 j'ai pomme de terre et en B1 j'ai 100
en A2 j'ai tomate et en B2 j'ai une cellule vide
en A3 j'ai une cellule vide et en B3 j'ai aussi une cellule vide
en A4 j'ai sel et en B4 j'ai 10
je vais dans la feuille suivante et je lance une macro et
automatiquement j'ai:
en A1 j'ai pomme de terre et en B1 j'ai 100
en A2 j'ai sel et en B2 j'ai une 10
je n'aurai donc que les cellules de la colonne A et B de la feuille un
ou il y avait des valeurs numériques uniquement dans la colonne B et
cela sans aucune cellule vide dans la deuxième feuille.
Est ce possible à réaliser avec une macro? Et si oui pourriez-vous me
mettre sur la voie, bien sûr je réalise des macros avec l'enregistreur
de excel puis je les adapte plus ou moins bien mais c'est plus que de
l'enregistrement qu'il faut.
Merci d'avance.
Didiersee@hotmail.com
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
Pierre Fauconnier
Bonsoir
Voici qui pourrait convenir. Il faut modifier l'initialisation des feuilles
Sub CopierColonnes() Dim FeuilleSource As Worksheet Dim FeuilleCible As Worksheet Dim Cellule As Range
Set FeuilleSource = Worksheets("feuil2") Set FeuilleCible = Worksheets("Feuil3") For Each Cellule In FeuilleSource.Range("b1:b" & _ FeuilleSource.Range("b65536").End(xlUp).Row) If IsNumeric(Cellule) And Cellule <> "" Then _ Range(Cellule(1, 0), Cellule).Copy _ Destination:þuilleCible.Range("a65536").End(xlUp)(2) Next Cellule End Sub
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
didiersee wrote:
Bonjour, j'ai deux colonnes, celle de gauche contient des cellules avec des libellés (texte) et aussi des cellules vides, celle de droite contient des cellules avec du texte des cellules vides et des cellules avec des valeurs numériques. J'aimerai que dans une autre feuille (la suivante par exemple)reprennent uniquement les cellules de la colonne de droite dont les valeurs sont uniquement numériques ainsi que les libellés des cellules qui sont juste à côté des cellules numériques. par exemple: en A1 j'ai pomme de terre et en B1 j'ai 100 en A2 j'ai tomate et en B2 j'ai une cellule vide en A3 j'ai une cellule vide et en B3 j'ai aussi une cellule vide en A4 j'ai sel et en B4 j'ai 10
je vais dans la feuille suivante et je lance une macro et automatiquement j'ai: en A1 j'ai pomme de terre et en B1 j'ai 100 en A2 j'ai sel et en B2 j'ai une 10
je n'aurai donc que les cellules de la colonne A et B de la feuille un ou il y avait des valeurs numériques uniquement dans la colonne B et cela sans aucune cellule vide dans la deuxième feuille.
Est ce possible à réaliser avec une macro? Et si oui pourriez-vous me mettre sur la voie, bien sûr je réalise des macros avec l'enregistreur de excel puis je les adapte plus ou moins bien mais c'est plus que de l'enregistrement qu'il faut. Merci d'avance.
Bonsoir
Voici qui pourrait convenir. Il faut modifier l'initialisation des feuilles
Sub CopierColonnes()
Dim FeuilleSource As Worksheet
Dim FeuilleCible As Worksheet
Dim Cellule As Range
Set FeuilleSource = Worksheets("feuil2")
Set FeuilleCible = Worksheets("Feuil3")
For Each Cellule In FeuilleSource.Range("b1:b" & _
FeuilleSource.Range("b65536").End(xlUp).Row)
If IsNumeric(Cellule) And Cellule <> "" Then _
Range(Cellule(1, 0), Cellule).Copy _
Destination:þuilleCible.Range("a65536").End(xlUp)(2)
Next Cellule
End Sub
--
Cela convient-il?
----
Pierre Fauconnier
"C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..."
(remplacer NOSPAM par pfi pour me répondre. Merci)
didiersee wrote:
Bonjour, j'ai deux colonnes, celle de gauche contient des cellules
avec des libellés (texte) et aussi des cellules vides, celle de droite
contient des cellules avec du texte des cellules vides et des cellules
avec des valeurs numériques.
J'aimerai que dans une autre feuille (la suivante par
exemple)reprennent uniquement les cellules de la colonne de droite
dont les valeurs sont uniquement numériques ainsi que les libellés des
cellules qui sont juste à côté des cellules numériques.
par exemple:
en A1 j'ai pomme de terre et en B1 j'ai 100
en A2 j'ai tomate et en B2 j'ai une cellule vide
en A3 j'ai une cellule vide et en B3 j'ai aussi une cellule vide
en A4 j'ai sel et en B4 j'ai 10
je vais dans la feuille suivante et je lance une macro et
automatiquement j'ai:
en A1 j'ai pomme de terre et en B1 j'ai 100
en A2 j'ai sel et en B2 j'ai une 10
je n'aurai donc que les cellules de la colonne A et B de la feuille un
ou il y avait des valeurs numériques uniquement dans la colonne B et
cela sans aucune cellule vide dans la deuxième feuille.
Est ce possible à réaliser avec une macro? Et si oui pourriez-vous me
mettre sur la voie, bien sûr je réalise des macros avec l'enregistreur
de excel puis je les adapte plus ou moins bien mais c'est plus que de
l'enregistrement qu'il faut.
Merci d'avance.
Didiersee@hotmail.com
Voici qui pourrait convenir. Il faut modifier l'initialisation des feuilles
Sub CopierColonnes() Dim FeuilleSource As Worksheet Dim FeuilleCible As Worksheet Dim Cellule As Range
Set FeuilleSource = Worksheets("feuil2") Set FeuilleCible = Worksheets("Feuil3") For Each Cellule In FeuilleSource.Range("b1:b" & _ FeuilleSource.Range("b65536").End(xlUp).Row) If IsNumeric(Cellule) And Cellule <> "" Then _ Range(Cellule(1, 0), Cellule).Copy _ Destination:þuilleCible.Range("a65536").End(xlUp)(2) Next Cellule End Sub
-- Cela convient-il? ---- Pierre Fauconnier "C'est lorsqu'il y a un temps mort qu'il faut tuer le temps..." (remplacer NOSPAM par pfi pour me répondre. Merci)
didiersee wrote:
Bonjour, j'ai deux colonnes, celle de gauche contient des cellules avec des libellés (texte) et aussi des cellules vides, celle de droite contient des cellules avec du texte des cellules vides et des cellules avec des valeurs numériques. J'aimerai que dans une autre feuille (la suivante par exemple)reprennent uniquement les cellules de la colonne de droite dont les valeurs sont uniquement numériques ainsi que les libellés des cellules qui sont juste à côté des cellules numériques. par exemple: en A1 j'ai pomme de terre et en B1 j'ai 100 en A2 j'ai tomate et en B2 j'ai une cellule vide en A3 j'ai une cellule vide et en B3 j'ai aussi une cellule vide en A4 j'ai sel et en B4 j'ai 10
je vais dans la feuille suivante et je lance une macro et automatiquement j'ai: en A1 j'ai pomme de terre et en B1 j'ai 100 en A2 j'ai sel et en B2 j'ai une 10
je n'aurai donc que les cellules de la colonne A et B de la feuille un ou il y avait des valeurs numériques uniquement dans la colonne B et cela sans aucune cellule vide dans la deuxième feuille.
Est ce possible à réaliser avec une macro? Et si oui pourriez-vous me mettre sur la voie, bien sûr je réalise des macros avec l'enregistreur de excel puis je les adapte plus ou moins bien mais c'est plus que de l'enregistrement qu'il faut. Merci d'avance.
AV
Autre... Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les valeurs num) Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis", peut apporter un gain de gain temps appréciable ! Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz() Application.ScreenUpdating = False With [Feuil1!A:B] .AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr, Criteria2:="<=0" .Copy ([Feuil2!A1]) .AutoFilter End With End Sub
AV
Autre...
Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les
valeurs num)
Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis",
peut apporter un gain de gain temps appréciable !
Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz()
Application.ScreenUpdating = False
With [Feuil1!A:B]
.AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr,
Criteria2:="<=0"
.Copy ([Feuil2!A1])
.AutoFilter
End With
End Sub
Autre... Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les valeurs num) Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis", peut apporter un gain de gain temps appréciable ! Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz() Application.ScreenUpdating = False With [Feuil1!A:B] .AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr, Criteria2:="<=0" .Copy ([Feuil2!A1]) .AutoFilter End With End Sub
AV
didiersee
"AV" wrote in message news:<blt7l7$u8l$...
Autre... Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les valeurs num) Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis", peut apporter un gain de gain temps appréciable ! Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz() Application.ScreenUpdating = False With [Feuil1!A:B] .AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr, Criteria2:="<=0" .Copy ([Feuil2!A1]) .AutoFilter End With End Sub
AV Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais
j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2", il faut que tu saches aussi que je suis sous win 2000 et excel 2000 ça compte aussi pcq je sais que suivant les versions de excel il faut faire parfois l'une ou l'autre modif pour adapter les macros, enfin on ne sait jamais peut-être connaîs-tu la solution. Merci d'avance Didiersee
"AV" <alain.vallon@wanadoo.fr> wrote in message news:<blt7l7$u8l$1@news-reader1.wanadoo.fr>...
Autre...
Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les
valeurs num)
Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis",
peut apporter un gain de gain temps appréciable !
Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz()
Application.ScreenUpdating = False
With [Feuil1!A:B]
.AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr,
Criteria2:="<=0"
.Copy ([Feuil2!A1])
.AutoFilter
End With
End Sub
AV
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais
j'ai le message "erreur de compilation" sur l'instruction
".AutoFilterField:=2", il faut que tu saches aussi que je suis sous
win 2000 et excel 2000 ça compte aussi pcq je sais que suivant les
versions de excel il faut faire parfois l'une ou l'autre modif pour
adapter les macros, enfin on ne sait jamais peut-être connaîs-tu la
solution.
Merci d'avance
Didiersee
Autre... Utilisation du filtre auto personnalisé(avec petite astuce pour filtrer les valeurs num) Sur une longue plage, l'utilisation du filtre en lieu et place des "frisottis", peut apporter un gain de gain temps appréciable ! Les données en Feuil1 en A1:Bx à copier en Feuil2
Sub zzz() Application.ScreenUpdating = False With [Feuil1!A:B] .AutoFilter Field:=2, Criteria1:=">=0", Operator:=xlOr, Criteria2:="<=0" .Copy ([Feuil2!A1]) .AutoFilter End With End Sub
AV Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais
j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2", il faut que tu saches aussi que je suis sous win 2000 et excel 2000 ça compte aussi pcq je sais que suivant les versions de excel il faut faire parfois l'une ou l'autre modif pour adapter les macros, enfin on ne sait jamais peut-être connaîs-tu la solution. Merci d'avance Didiersee
AV
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0" doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans le
message !
il faut que tu saches aussi que je suis sous win 2000 et excel 2000
Dans le cas présent, pas d'importance AV
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais
j'ai le message "erreur de compilation" sur l'instruction
".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0"
doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans le
message !
il faut que tu saches aussi que je suis sous
win 2000 et excel 2000
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0" doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans le
message !
il faut que tu saches aussi que je suis sous win 2000 et excel 2000
Dans le cas présent, pas d'importance AV
didier
Un grand merci Alain ça marche super bien, tu maîtrises VBA sur le bout des doigts Juste pour info, tu as appris VBA en autodidacte ou tu as suivi des cours?? Si c'est en autodidacte avec quel livre as-tu appris? Encore merci Didier "AV" a écrit dans le message de news: bltmc2$irc$
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0" doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans
le
message !
il faut que tu saches aussi que je suis sous win 2000 et excel 2000
Dans le cas présent, pas d'importance AV
Un grand merci Alain ça marche super bien, tu maîtrises VBA sur le bout des
doigts
Juste pour info, tu as appris VBA en autodidacte ou tu as suivi des cours??
Si c'est en autodidacte avec quel livre as-tu appris?
Encore merci
Didier
"AV" <alain.vallon@wanadoo.fr> a écrit dans le message de news:
bltmc2$irc$1@news-reader3.wanadoo.fr...
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais
j'ai le message "erreur de compilation" sur l'instruction
".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0"
doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans
le
message !
il faut que tu saches aussi que je suis sous
win 2000 et excel 2000
Un grand merci Alain ça marche super bien, tu maîtrises VBA sur le bout des doigts Juste pour info, tu as appris VBA en autodidacte ou tu as suivi des cours?? Si c'est en autodidacte avec quel livre as-tu appris? Encore merci Didier "AV" a écrit dans le message de news: bltmc2$irc$
Bonjour Alain ce serait super si ça marchait, merci de l'effort, mais j'ai le message "erreur de compilation" sur l'instruction ".AutoFilterField:=2",
Mais ça marche !
ATTENTION à la recopie du code :
.AutoFilter Field:=2, ...... Criteria2:="<=0" doit être sur une seule et même ligne au lieu de 2 comme il apparaît dans
le
message !
il faut que tu saches aussi que je suis sous win 2000 et excel 2000
Dans le cas présent, pas d'importance AV
AV
Juste pour info, tu as appris VBA en autodidacte ou tu as suivi des cours?? ** Je suis diplomé (mention honorable) de la JPS School !
Si c'est en autodidacte avec quel livre as-tu appris ? ** Mon livre de chevet :
"Excel de A à Z" par JPS aux Editions du Tonneau
;-) AV
Juste pour info, tu as appris VBA en autodidacte ou tu as suivi des cours??
** Je suis diplomé (mention honorable) de la JPS School !
Si c'est en autodidacte avec quel livre as-tu appris ?
** Mon livre de chevet :