Formule excel : transfert de donnée
angelique
-
angele -
angele -
Bonjour,
je voudrais avoir de l'aide sur une formule :
je vous explique ce que je voudrais faire ; dans un classuer j'ai deux feuilles de travail
une avec une balance comptable et une vierge.
j'aimerais trouver une formule qui copie et colle la feuille une sur la feuille que si les numeros de comptes de la colonne A sont compris dans une plage précise.
ex : si les comptes sont compris entre 601000 et 609799 alors copie et colle les differentes lignes ds la feuille vierge .
merci d'avance pour votre aide,
angelique
je voudrais avoir de l'aide sur une formule :
je vous explique ce que je voudrais faire ; dans un classuer j'ai deux feuilles de travail
une avec une balance comptable et une vierge.
j'aimerais trouver une formule qui copie et colle la feuille une sur la feuille que si les numeros de comptes de la colonne A sont compris dans une plage précise.
ex : si les comptes sont compris entre 601000 et 609799 alors copie et colle les differentes lignes ds la feuille vierge .
merci d'avance pour votre aide,
angelique
A voir également:
- Formule excel : transfert de donnée
- Formule excel si et - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Liste déroulante excel - Guide
- Formule somme excel ligne - Guide
- Mise en forme conditionnelle excel formule - Guide
6 réponses
Bonjour
On peut le faire par VBA bien sûr mais aussi par formules....
pour être efficace joins un extrait de ton classeur
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe (format XL97-2003) sur
https://www.cjoint.com/
et faire un clic droit sur le lien proposé puis "copier l'adresse du lien" et coller dans le message de réponse
transféré dans le forum bureautique....
On peut le faire par VBA bien sûr mais aussi par formules....
pour être efficace joins un extrait de ton classeur
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe (format XL97-2003) sur
https://www.cjoint.com/
et faire un clic droit sur le lien proposé puis "copier l'adresse du lien" et coller dans le message de réponse
transféré dans le forum bureautique....
Bonjour
une petite solution sans macro, modèle à adapter
https://www.cjoint.com/?AJukeYYjpXw
crdlmnt
une petite solution sans macro, modèle à adapter
https://www.cjoint.com/?AJukeYYjpXw
crdlmnt
bonjour à tous,
Avec un filtre élaboré, cela fonctionne très bien :
http://www.cijoint.fr/cjlink.php?file=cj201110/cijSmDwmtO.xlsx
J'ai mis en image les paramètres du filtre.
Avec un filtre élaboré, cela fonctionne très bien :
http://www.cijoint.fr/cjlink.php?file=cj201110/cijSmDwmtO.xlsx
J'ai mis en image les paramètres du filtre.
bonjour,
version 2007(tuto) de la solution de gbinforme (qui fonctionne aussi sous 2007 mais sans zone de critère, a voir suivant ses habitudes)
https://www.cjoint.com/?AJwj5oGrzxg
version 2007(tuto) de la solution de gbinforme (qui fonctionne aussi sous 2007 mais sans zone de critère, a voir suivant ses habitudes)
https://www.cjoint.com/?AJwj5oGrzxg
Bonjour,
exemple pour copier les lignes 4 à 50
sub a()
for a = 4 to 50
' test si ta valeur est comprise entre 601000 et 609799
if range("a" & a).value >601000 then
if range("a" & a).value <609799 then
' copy la ligne
rows(a & ":" & a).select
selection.copy
'selectionne la feuille "feuil2", insere une ligne et colle la ligne
sheets("feuil2").select
rows("a:a").select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
rows("a:a").select
ActiveSheet.Paste
'arrete la copy, selectionne la feuille "balance comptable"
Application.CutCopyMode = False
sheets("balance comptable").select
next
end sub
voila
exemple pour copier les lignes 4 à 50
sub a()
for a = 4 to 50
' test si ta valeur est comprise entre 601000 et 609799
if range("a" & a).value >601000 then
if range("a" & a).value <609799 then
' copy la ligne
rows(a & ":" & a).select
selection.copy
'selectionne la feuille "feuil2", insere une ligne et colle la ligne
sheets("feuil2").select
rows("a:a").select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
rows("a:a").select
ActiveSheet.Paste
'arrete la copy, selectionne la feuille "balance comptable"
Application.CutCopyMode = False
sheets("balance comptable").select
next
end sub
voila
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Essaye ce code :
Sub Macro1()
Dim a As Integer
a = 4
For a = 4 To 50
' tu dois remplacer la lettre entre guillemet ("a") de range("a"... qui correspond
' a la colonne où se situ le compte (qui doit être entre 601000 et 609799 )
If Range("a" & a).Value > 601000 Then
If Range("a" & a).Value < 609799 Then
Rows(a & ":" & a).Select
Selection.Copy
Sheets("feuil2").Select
Rows("a:a").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("a:a").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("balance comptable").Select
End If
End If
Next a
End Sub
Sub Macro1()
Dim a As Integer
a = 4
For a = 4 To 50
' tu dois remplacer la lettre entre guillemet ("a") de range("a"... qui correspond
' a la colonne où se situ le compte (qui doit être entre 601000 et 609799 )
If Range("a" & a).Value > 601000 Then
If Range("a" & a).Value < 609799 Then
Rows(a & ":" & a).Select
Selection.Copy
Sheets("feuil2").Select
Rows("a:a").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows("a:a").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Sheets("balance comptable").Select
End If
End If
Next a
End Sub
voici un extrait et sur la feuille 60 (g) ce que je veux faire
http://cjoint.com/?AJuw6MVKJiU
merci pour votre aide
ci joint- votre modèle adapté selon ma première proposition dans le message 5 sur ce fil?
http://www.cijoint.fr/cjlink.php?file=cj201110/cijYTvSLwu.xlsx
Notez que votre liste de N° en colonne A est un format texte et ne peut donc pas utiliser directement en l'état les opérateur > ou <.
Il faut donc:
_ intégrer dans la formule de détection le *1 que vous verrez en colonne Z du fichier transmis
ou effectuer la manip suivante
_entrer la valeur 1 dans une cellule hors champ
_la copier
_sélectionner le champ de s N° en colonne A
_Clic droit/collage spécial / multiplication
pour transformer la liste en format numérique
cette deuxième option est indispensable si vous voulez utiliser la macro de eljojo au message 4
crdlmnt
Avec XL2007, cela se fait en 10 minutes maxi, sans VBA ni formules....
Je viens juste de rentrer après une journée dehors. Te proposerai cela demain matin....
bonne soirée
je n'ai pas de réponse d'Angèle sur ma dernière proposition
(https://forums.commentcamarche.net/forum/affich-23422535-formule-excel-transfert-de-donnee#9)
et le fichier joint.
Je me permet de te re-ignaler, comme précisé dans mon message, que dans le fichier transmis par Angèle, il faut d'abord transformer en num la colonne N° de compte, car elle est en texte.
Difficile de trouver les +grands et les + petits sans rien changer
Bonne soirée et le cas échéant, bon week-end.
crdlmnt
en effet ta formule fonctionne merci beaucoup je vais essayer de bien la comprendre et de voir si elle peut fonctionner avec une balance plus volumineuse.
je veux bien voir ta solution Michel ca me permet d'apprendre des solutions diverses :) par contre j'ai j'ai windoxl2010.
par contre vba je comprend pas tout et il me remet une formule d'erreur ! :s