Copier coller un tableau dont la longueur varie VBA
Fermé
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
-
14 mai 2013 à 12:00
Mike-31 Messages postés 18342 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 2 novembre 2024 - 15 mai 2013 à 13:26
Mike-31 Messages postés 18342 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 2 novembre 2024 - 15 mai 2013 à 13:26
A voir également:
- Copier coller un tableau dont la longueur varie VBA
- Tableau croisé dynamique - Guide
- Code ascii tableau - Guide
- Copier coller pdf - Guide
- Comment faire un tableau - Guide
- Retrouver un copier-coller android - Guide
8 réponses
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
14 mai 2013 à 15:27
14 mai 2013 à 15:27
Salut,
Dans ta feuille appelée "Input", dans quelle cellule se trouve la valeur que tu dois ajouter à ta cellule C5 pour déterminer la dernière ligne à copier. Cette valeur est elle alphanumérique
Dans ta feuille appelée "Input", dans quelle cellule se trouve la valeur que tu dois ajouter à ta cellule C5 pour déterminer la dernière ligne à copier. Cette valeur est elle alphanumérique
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
Modifié par Mike-31 le 14/05/2013 à 15:39
Modifié par Mike-31 le 14/05/2013 à 15:39
Re,
wouah 74000, donc tu veux copier C5:E74005 c'est bien cela
et quel l'adresse de cette cellule feuille "Input"
ce E74005 est elle la dernière cellule de ton tableau
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
wouah 74000, donc tu veux copier C5:E74005 c'est bien cela
et quel l'adresse de cette cellule feuille "Input"
ce E74005 est elle la dernière cellule de ton tableau
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
14 mai 2013 à 15:42
14 mai 2013 à 15:42
Haha, oui exactement. Elle se trouve en C11 dans la feuille input.
Pour etre plus claire je vais t'expliquer ce que j;essaye de faire. Je veux simplifier le programme de fidelite de ma boite. A l'heure actuelle il y a deux types de programmes, on veut melanger les deux pour en faire un seul et unique et en faciliter l'acces pour attirer des nouveaux membres.
J;ai donc trois feuilles avec une feuille par programme existant et une feuille avec la liste des clients frequents dans laquelle je veux extraire uniquement une certaine partie en fonction de mes hypotheses.
Je veux ensuite faire un tableau dans la feuille "Total" ou j;ai les informations du premier programme a la suite les info du deuxieme et ensuite celles des nouveaux clients.
Comme mes hypotheses peuvent varier j'aimerais pouvoir coller a la fin les données des nouveaux clients mais pouvoir les faire varier en fonction de ma variable en C11 dans Input.
J'espere que c'est clair et que ca te permet de voir ce que je veux faire.
Merci encore,
D
Pour etre plus claire je vais t'expliquer ce que j;essaye de faire. Je veux simplifier le programme de fidelite de ma boite. A l'heure actuelle il y a deux types de programmes, on veut melanger les deux pour en faire un seul et unique et en faciliter l'acces pour attirer des nouveaux membres.
J;ai donc trois feuilles avec une feuille par programme existant et une feuille avec la liste des clients frequents dans laquelle je veux extraire uniquement une certaine partie en fonction de mes hypotheses.
Je veux ensuite faire un tableau dans la feuille "Total" ou j;ai les informations du premier programme a la suite les info du deuxieme et ensuite celles des nouveaux clients.
Comme mes hypotheses peuvent varier j'aimerais pouvoir coller a la fin les données des nouveaux clients mais pouvoir les faire varier en fonction de ma variable en C11 dans Input.
J'espere que c'est clair et que ca te permet de voir ce que je veux faire.
Merci encore,
D
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
14 mai 2013 à 16:04
14 mai 2013 à 16:04
Re,
Je crois avoir compris, feuille Input cellule C11 tu saisis exemple 100 ce qui va te permettre de copier de la feuille nommée Feuil1 par exemple les cellule C5 à E105 d'une plage de données qui est plus importante
c'est cela
Je crois avoir compris, feuille Input cellule C11 tu saisis exemple 100 ce qui va te permettre de copier de la feuille nommée Feuil1 par exemple les cellule C5 à E105 d'une plage de données qui est plus importante
c'est cela
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
14 mai 2013 à 16:22
14 mai 2013 à 16:22
C'est exactement cela. Et apres je veux la copier dans un tableau qui representera tous mes membres potentiels de mon futur programme de fidelite.
Merci Mike,
D
Merci Mike,
D
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
14 mai 2013 à 16:27
14 mai 2013 à 16:27
RE,
Ok je t'écris un code dans la soirée, comment se nomme l'onglet ou se trouvent tes données à copier et le nom de l'onglet sur lequel les données seront copiées
la Feuille Input si j'ai bien compris est la feuille de pilotage sur lequel le bouton sera créé et ou se trouve la cellule C11 qui détermine la hauteur de la plage à copier
Ok je t'écris un code dans la soirée, comment se nomme l'onglet ou se trouvent tes données à copier et le nom de l'onglet sur lequel les données seront copiées
la Feuille Input si j'ai bien compris est la feuille de pilotage sur lequel le bouton sera créé et ou se trouve la cellule C11 qui détermine la hauteur de la plage à copier
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
14 mai 2013 à 16:33
14 mai 2013 à 16:33
Merci beaucoup Mike!
Faut il absolument que je copie mes données dans une feuille vierge puis dans la feuille ou je veux le tableau avec tous les membres ou est ce possible de copier directement a la suite du tableau avec les membres des deux programmes?
S'il faut une etape intermediaire alors je créerai une feuille appelée Data New Joiners et la destination finale des data s'appelle Data Total.
Merci beaucoup pour ton aide,
D
Faut il absolument que je copie mes données dans une feuille vierge puis dans la feuille ou je veux le tableau avec tous les membres ou est ce possible de copier directement a la suite du tableau avec les membres des deux programmes?
S'il faut une etape intermediaire alors je créerai une feuille appelée Data New Joiners et la destination finale des data s'appelle Data Total.
Merci beaucoup pour ton aide,
D
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
14 mai 2013 à 16:34
14 mai 2013 à 16:34
Et c'est exactement ca pour la feuille Input.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
14 mai 2013 à 21:43
14 mai 2013 à 21:43
Re,
Voila le code à coller dans un module et associer à un bouton
Sub test()
Sheets("Feuil2").Select
Range(Range("C5"), Range("E" & Sheets("Input").Range("C11"))).Copy
Sheets("Data Total").Activate
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
ce code copie la plage de la feuille nommée Feuil2 (ne connaissant pas le nom de cette feuille) définie par la cellule C11 de la feuille Input
et colle directement à la suite des données feuille nommée Data Total
Voila le code à coller dans un module et associer à un bouton
Sub test()
Sheets("Feuil2").Select
Range(Range("C5"), Range("E" & Sheets("Input").Range("C11"))).Copy
Sheets("Data Total").Activate
Range("A65536").End(xlUp).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
ce code copie la plage de la feuille nommée Feuil2 (ne connaissant pas le nom de cette feuille) définie par la cellule C11 de la feuille Input
et colle directement à la suite des données feuille nommée Data Total
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
15 mai 2013 à 11:25
15 mai 2013 à 11:25
Bonjour Mike,
Merci pour ton aide. J'ai créé une macro mais en rentrant ton code, ca me met Run-time error '1004'
Method 'Range' of object '_Global' failed.
Apparemment l'erreur vient de la troisieme ligne.
As tu une idée de ce que je peux faire pour debuger le code?
Merci mille fois!
Merci pour ton aide. J'ai créé une macro mais en rentrant ton code, ca me met Run-time error '1004'
Method 'Range' of object '_Global' failed.
Apparemment l'erreur vient de la troisieme ligne.
As tu une idée de ce que je peux faire pour debuger le code?
Merci mille fois!
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
15 mai 2013 à 12:12
15 mai 2013 à 12:12
Re,
quelle ligne se met en jaune,
celle ci
Range(Range("C5"), Range("E" & Sheets("Input").Range("C11"))).Copy
ou celle ci
Sheets("Data Total").Activate
quelle ligne se met en jaune,
celle ci
Range(Range("C5"), Range("E" & Sheets("Input").Range("C11"))).Copy
ou celle ci
Sheets("Data Total").Activate
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
15 mai 2013 à 12:16
15 mai 2013 à 12:16
Celle qui commence par Range.
AnalystUK
Messages postés
9
Date d'inscription
mardi 14 mai 2013
Statut
Membre
Dernière intervention
15 mai 2013
15 mai 2013 à 12:31
15 mai 2013 à 12:31
Ah j'ai trouvé l'erreur! En gros c'etait parce que en C11, ma valeur est obtenue en faisant la moyenne de deux valeurs donc j'avais C11=(C9+C10)/2.
Dois je obligatoirement avoir uniquement une valeur ou est ce possible de conserver C11 en tant que moyenne de deux valeurs?
Enfinca m'a collé mon tableau au debut de mon onglet Data Total alors qu'il y avaitdeja des données dans ce tableau. Est ce que tu penses que c'est possible de le coller a la fin du tableau?
Merci beaucoup c'est super!!
Dois je obligatoirement avoir uniquement une valeur ou est ce possible de conserver C11 en tant que moyenne de deux valeurs?
Enfinca m'a collé mon tableau au debut de mon onglet Data Total alors qu'il y avaitdeja des données dans ce tableau. Est ce que tu penses que c'est possible de le coller a la fin du tableau?
Merci beaucoup c'est super!!
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
15 mai 2013 à 12:23
15 mai 2013 à 12:23
Re,
Bizarre, il n'y a rien qui puisse bloquer, dans ta cellule C11 de la feuille Imput tu as bien une valeur, c'est cette valeur qui détermine la hauteur de la plage à copier
Bizarre, il n'y a rien qui puisse bloquer, dans ta cellule C11 de la feuille Imput tu as bien une valeur, c'est cette valeur qui détermine la hauteur de la plage à copier
Mike-31
Messages postés
18342
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
2 novembre 2024
5 103
15 mai 2013 à 13:26
15 mai 2013 à 13:26
Re,
tu peux utiliser la formule mais le problème sont les décimales, si la moyenne tombe un chiffre entier pas de problème, mais si la moyenne à des décimales il est impossible de sélectionner une fraction de ligne ou tu complètes la formule pour avoir une valeur entière pour sélectionner une ligne supplémentaire et le code fonctionnera
Au passage ta formule =(C9+C10)/2 donne la moyenne, tu pourrais écrire comme cela =MOYENNE(C9:C10)
tu peux utiliser la formule mais le problème sont les décimales, si la moyenne tombe un chiffre entier pas de problème, mais si la moyenne à des décimales il est impossible de sélectionner une fraction de ligne ou tu complètes la formule pour avoir une valeur entière pour sélectionner une ligne supplémentaire et le code fonctionnera
Au passage ta formule =(C9+C10)/2 donne la moyenne, tu pourrais écrire comme cela =MOYENNE(C9:C10)
14 mai 2013 à 15:29
Merci de prendre le temps de m'aider. Oui il s'agit d'une valeur numérique qui est pour le moment 74000.
Merci encore pour ton aide,
D