Transfert de Valeurs EXCEL/VBA
Fermé
holaaaa
-
1 avril 2008 à 18:59
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 - 2 avril 2008 à 21:51
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 - 2 avril 2008 à 21:51
A voir également:
- Transfert de Valeurs EXCEL/VBA
- Liste déroulante excel - Guide
- Si et excel - Guide
- Word et excel gratuit - Guide
- Déplacer une colonne excel - Guide
- Excel compter cellule couleur sans vba - Guide
1 réponse
LePierre
Messages postés
249
Date d'inscription
samedi 8 mars 2008
Statut
Membre
Dernière intervention
2 août 2012
338
1 avril 2008 à 20:17
1 avril 2008 à 20:17
bonjour
voici ton code modifié et testé :
j'ai ajouté la gestion des lignes dans la feuille "Recapitul".
à plus
voici ton code modifié et testé :
Sub bla() Lig = 4 For Each feuille In Worksheets If feuille.Name <> "Recapitul" Then feuille.Select feuille.Cells(45, 79).Copy Sheets("Recapitul").Activate Cells(Lig, 5).Select ActiveSheet.Paste Lig = Lig + 1 End If Next End Sub
j'ai ajouté la gestion des lignes dans la feuille "Recapitul".
à plus
2 avril 2008 à 09:44
Merci de ton aide. Bon, ça ne marche pas encore, mais grâce à toi j'ai trouvé l'erreur... c'est déjà ça!! Je t'explique :
En fait, je mets cette macro depuis un bouton qui se situe sur une autre feuille encore, qu'on appelera "accueil".
Donc quand je clique sur ce bouton dans la feuille "accueil", ton code fonctionne jusqu'à la ligne "Cells(Lig, 5).Select", où là ça bug !!! A mon avis, le programme ne "comprend" pas que je souhaite écrire sur la feuille "recapitul". Tu vois ce que je veux dire ?
Par ailleurs, je souhaiterais copier plusieurs cases et non une seule ; c'est pour cela que j'avais mis :
"feuille.Range.(Cells(45, 79), Cells(52, 86)).Copy"
Donc deux problèmes : Ton code fonctionne bien si je ne mets pas de bouton dans une autre feuille (j'ai essayé : cela marche avec le bouton situé dans la feuille "recapitul") ; et le fait que je souhaiterais copier plusieurs cellules (au moins 3 si c'est possible).
Mon code actuel est donc le suivant :
Private Sub CommandButton1_Click()
Lig = 4
For Each feuille In Worksheets
If feuille.Name <> "Recapitul" Then
feuille.Select
feuille.Range(Cells(45, 79, Cells(52, 86)).Copy
Sheets("Recapitul").Activate
Cells(Lig, 5).Select
ActiveSheet.Paste
Lig = Lig + 1
End If
Next
End Sub
En souligné : les lignes qui ne fonctionnent pas !
Merci beaucoup de ton aide... ou de votre aide si d'autres personnes pensent avoir la solution!!
++
2 avril 2008 à 13:28
effectivement ça ne peut pas fonctionner car le "coller" de la deuxième feuille efface les données récupérées de la cellule (52,86) de la première feuille.
de plus il manque une parenthèse après (45,79
il faut : feuille.Range(Cells(45, 79), Cells(52, 86)).Copy
colle ce code dans un module et affecte la macro "bla" à ton bouton. J'ai testé et ça fonctionne.
par contre je colle la deuxième valeur à côté de la première. Ce n'est peut être pas ça que tu veux ?
souhaites-tu vraiment copier ces cellules ou simplement récupérer le contenu de ces cellules ? Si tu ne veux que la valeur contenue le code est plus facile à réaliser.
à plus
2 avril 2008 à 13:45
Le truc c'est que dans certaines cellules que je copie, le contenu est : =I13+J13 par exemple!! Or, moi je ne veux pas copier cette formule, mais la valeur numérique (résultat qui s'affiche dans la case!!).
Dans ces conditions, tu dis que le code est différent ? et plus simple ?
Sinon pour ta question : ce n'est pas grave si les cellules "collées" sont à côté ! Si jamais je ne le souhaite pas, je devrai créer un deuxième compteur lig2 !? non ?
En tout cas merci pour toute cette aide ! Je vais essayer de faire fonctionner ton code mais je crains que je vais avoir le problème de contenu/valeur dont on a parlé !!
En tout cas je suis obligé de fonctionner par VBA (meme si je ne veux que les valeurs des cellules (et les formats!)), car je souhaite par la suite ajouter des feuilles dans mon fichier Excel et que ma feuille "recapitul" ajoute toute seule les nouvelles données!
Merci merci!!
2 avril 2008 à 21:51
tu peux préparer ta feuille "Recapitul" en copiant manuellement tes formats particuliers et en les collant aux bons emplacements (colonnes 5 et 6 dans cet exemple).
Ensuite tu récupéres simplement les valeurs.
voici le nouveau code de récupération :
à plus