Copier coller une colonne d'une feuille vers une autre
Résolu/Fermé
A voir également:
- Copier coller une colonne d'une feuille vers une autre
- Déplacer une colonne excel - Guide
- Copier une vidéo youtube - Guide
- Copier coller pdf - Guide
- Comment supprimer une feuille sur word - Guide
- Trier une colonne excel - Guide
4 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 déc. 2013 à 13:35
18 déc. 2013 à 13:35
Bonjour,
Si la saisie est bte = "Achat 2014" alors bte & "GNF" donne "Achat 2014GNF" et non "Achat 2014 GNF".
Idem pour "''Prév'' & bte qui donne "PrèvAchat 2014" et non "Prèv Achat 2014".
La recherche Find() ne donnera aucune réponse même si la colonne existe.
Ensuite, pas la peine de faire un Do While ... Loop. Il suffit de rappeler la procédure cop.
;0)
Si la saisie est bte = "Achat 2014" alors bte & "GNF" donne "Achat 2014GNF" et non "Achat 2014 GNF".
Idem pour "''Prév'' & bte qui donne "PrèvAchat 2014" et non "Prèv Achat 2014".
La recherche Find() ne donnera aucune réponse même si la colonne existe.
Ensuite, pas la peine de faire un Do While ... Loop. Il suffit de rappeler la procédure cop.
Dim rep As Integer rep = MsgBox("Voulez vous continuer ?", vbYesNo, "Continuer") If rep = vbYes Then cop Else Exit Sub End If
;0)
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 18/12/2013 à 14:02
Modifié par michel_m le 18/12/2013 à 14:02
Bonjour,
En plus de ce que t'indique Polux que je salue, ta syntaxe de "find" est fausse et, de plus, tu peux avoir la valeur de la colonne directement sans passer pat la création d'une cellule, lourde en mémoire ...
un exemple à adapter
nota dans ton code + haut:écrire ""(ouvrer les guillemets) et non 2 apostrophes à la suite
Michel
En plus de ce que t'indique Polux que je salue, ta syntaxe de "find" est fausse et, de plus, tu peux avoir la valeur de la colonne directement sans passer pat la création d'une cellule, lourde en mémoire ...
un exemple à adapter
dim Cl1 as byte, Cl2 as byte
'...code
on error goto= saisie
Cl1=workbook("TAMP.xlsx").worksheets("tampon_Cumul").Rows(1).Find(what:="Achat 2014 GNF"., lookat:=xlWhole).Column
'Cl2=.....m^me punition
On error goto 0
'....code dont proposition de Polux
Exit sub
saisie:
msgbox "saisie incorrecte",vbcritical
End sub
nota dans ton code + haut:écrire ""(ouvrer les guillemets) et non 2 apostrophes à la suite
Michel
Merci pour l'intérêt que tu as accordé a ma préoccupation!
j'aimerais savoir
Si: bte &'' ''& ''GNF" donne Achat 2014 GNF.
Et ''Prév'' &'' ''& bte, ça devrait marcher non?
Merci d'avance pour la réponse!
j'aimerais savoir
Si: bte &'' ''& ''GNF" donne Achat 2014 GNF.
Et ''Prév'' &'' ''& bte, ça devrait marcher non?
Merci d'avance pour la réponse!
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 déc. 2013 à 14:03
18 déc. 2013 à 14:03
Oui ça donne le bon résultat tout comme :
bte & " GNF" et "Prèv " & bte ...
D'autre part, regarde la réponse de michel_m (que je salue également) concernant la syntaxte du Find()..
bte & " GNF" et "Prèv " & bte ...
D'autre part, regarde la réponse de michel_m (que je salue également) concernant la syntaxte du Find()..
Merci les amis.
Après avoir fais bte &'' ''& ''GNF et ''Prév'' &'' ''& bte, j'ai la boucle folle. c'est a dire une boucle infini de inputbox comm s'il y existait une erreur de saisie.
En utilisant la methode de Michel, ca ne marche pas et jai un message d'erreur : erreur definie par l'application ou par l'objet
Voici la synthaxe.
Aidez moi, je suis un apprenant!!
sub....
Dim cl1 as byte
Dim cl2 as byte
cl1=workbook(''TAMP.xlsx'').worksheets(''tampon_Cumul'').rows(1).cells.find(bte &'' ''& ''GNF , lookat:= xlwhole).columns
cl2=workbook(''ANN_LEG.xlsx'').worksheets(''Cumul'').rows(1).cells.find( ''Prév'' &'' ''& bte , lookat:= xlwhole).columns
workbook(''TAMP.xlsx'').worksheets(''tampon_Cumul'').columns(cl1).copy workbook(''ANN_LEG.xlsx'').worksheets(''Cumul'').columns (cl2)
end sub
Après avoir fais bte &'' ''& ''GNF et ''Prév'' &'' ''& bte, j'ai la boucle folle. c'est a dire une boucle infini de inputbox comm s'il y existait une erreur de saisie.
En utilisant la methode de Michel, ca ne marche pas et jai un message d'erreur : erreur definie par l'application ou par l'objet
Voici la synthaxe.
Aidez moi, je suis un apprenant!!
sub....
Dim cl1 as byte
Dim cl2 as byte
cl1=workbook(''TAMP.xlsx'').worksheets(''tampon_Cumul'').rows(1).cells.find(bte &'' ''& ''GNF , lookat:= xlwhole).columns
cl2=workbook(''ANN_LEG.xlsx'').worksheets(''Cumul'').rows(1).cells.find( ''Prév'' &'' ''& bte , lookat:= xlwhole).columns
workbook(''TAMP.xlsx'').worksheets(''tampon_Cumul'').columns(cl1).copy workbook(''ANN_LEG.xlsx'').worksheets(''Cumul'').columns (cl2)
end sub
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 18/12/2013 à 16:49
Modifié par michel_m le 18/12/2013 à 16:49
Tu as très mal lu ce que je t'indiquais:
:-(
....rows(1).find...
et non ...rows(&).cells.find....
Rows(1) définit le champ de recherche ligne 1;
Cells n'est pas une propriété de l'objet Rows mais cells définit toutes les cellules de la feuille ....
A la fin: Column et non Columns
:-(
....rows(1).find...
et non ...rows(&).cells.find....
Rows(1) définit le champ de recherche ligne 1;
Cells n'est pas une propriété de l'objet Rows mais cells définit toutes les cellules de la feuille ....
A la fin: Column et non Columns
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 déc. 2013 à 17:05
18 déc. 2013 à 17:05
Pour bien apprendre, il faut bien lire ...
D'une part, tu n'as pas lu les recommandations de michel et d'autre part, si tu as aussi lu mes recommandations, il ne devrait plus y avoir de boucle While !!!
D'une part, tu n'as pas lu les recommandations de michel et d'autre part, si tu as aussi lu mes recommandations, il ne devrait plus y avoir de boucle While !!!
Merci les amis!
Mon premier programme ci dessus marche, le problème était lié a la base de donnée.
Au fait Dans l'une des feuilles, il y avait Achat 2014 et dans l'autre il y avait Achat 2014.(problème d'espace). le contrôle des syntaxes des mots est rigoureux du fait de xlwhole.
En plus, j'ai écris Prév au lieu de ''Prév'' &'' ''& bte, tout en modifiant les champs de titres de ma base de donnée.
Merci les amis!!!
Mon premier programme ci dessus marche, le problème était lié a la base de donnée.
Au fait Dans l'une des feuilles, il y avait Achat 2014 et dans l'autre il y avait Achat 2014.(problème d'espace). le contrôle des syntaxes des mots est rigoureux du fait de xlwhole.
En plus, j'ai écris Prév au lieu de ''Prév'' &'' ''& bte, tout en modifiant les champs de titres de ma base de donnée.
Merci les amis!!!