Copier des données dans la dernière ligne vide
Résolu/Fermé
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
-
Modifié par Chris 94 le 12/11/2013 à 01:52
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 14 nov. 2013 à 14:37
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 14 nov. 2013 à 14:37
A voir également:
- Atteindre la derniere ligne vide word
- Supprimer page word vide - Guide
- Aller à la ligne excel - Guide
- Espace insécable word - Guide
- Organigramme word - Guide
- Suivi des modifications word - Guide
6 réponses
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
13 nov. 2013 à 08:10
13 nov. 2013 à 08:10
Bonjour,
Ci joint proposition (dézipper et non ouvrir directement)
https://www.cjoint.com/?3Knif41LUgd
j'avais fermé la bécane avant de lire ton dernier message
mais l'inscription du solde dans la colonne E peut ^tre traité par la macro "repartir"
je regarde et te propose la modif ( tout à l'heure) :o)
Ci joint proposition (dézipper et non ouvrir directement)
https://www.cjoint.com/?3Knif41LUgd
j'avais fermé la bécane avant de lire ton dernier message
mais l'inscription du solde dans la colonne E peut ^tre traité par la macro "repartir"
je regarde et te propose la modif ( tout à l'heure) :o)
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 12/11/2013 à 10:06
Modifié par michel_m le 12/11/2013 à 10:06
Bonjour,
Sur les forums, il est bien vu de citer ses sources....
il serait plus facile de d'essayer de t'aider si tu joignais ton fichier -ou un extrait-
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
dans cette attente :o)
Edit:
Déjà, il manque un point devant Rows.count
Sur les forums, il est bien vu de citer ses sources....
il serait plus facile de d'essayer de t'aider si tu joignais ton fichier -ou un extrait-
pour joindre une pièce
mettre le classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
dans cette attente :o)
Edit:
Déjà, il manque un point devant Rows.count
With Sheets(compte)Michel
Lign = .Range("a6" & Rows.Count).End(xlUp).Row + 1
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
12 nov. 2013 à 10:31
12 nov. 2013 à 10:31
Bonjour, salut Michel,
Rows.Count fait allusion à l'application et non à une feuille, il ne faut donc pas de point. ;-)
A+
Rows.Count fait allusion à l'application et non à une feuille, il ne faut donc pas de point. ;-)
A+
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 nov. 2013 à 13:43
12 nov. 2013 à 13:43
bonjour Lermite
OK, Merci; au fait,ne faudrait il pas écrire plutôt
Lign = .Range("A" & Rows.Count).End(xlUp).Row + 1
au lieu de
Lign = .Range("a6" & Rows.Count).End(xlUp).Row + 1
comme j'utilise un autre thread
with sheets(compte)
ligvide =Columns("A").find("*",,,,,xlprevious).row+1
...etc
je suis u_n peu perdu avec cette symtaxe rows.count)
OK, Merci; au fait,ne faudrait il pas écrire plutôt
Lign = .Range("A" & Rows.Count).End(xlUp).Row + 1
au lieu de
Lign = .Range("a6" & Rows.Count).End(xlUp).Row + 1
comme j'utilise un autre thread
with sheets(compte)
ligvide =Columns("A").find("*",,,,,xlprevious).row+1
...etc
je suis u_n peu perdu avec cette symtaxe rows.count)
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 190
12 nov. 2013 à 15:20
12 nov. 2013 à 15:20
Effectivement, j'avais zappé le 6 devant le A
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 15:02
12 nov. 2013 à 15:02
Bonjour Michel et Bonjour Lermite!
merci à vous deux pour votre aide. Lermite, j'ai essayé d'enlever le point.. j'ai cherché sur le net rows.count des indications.. j'ai pas trouvé..
Et michel, j'ai essayé tes deux solutions plus haut et ça n'a pas fonctionné non plus..
Voici mon fichier
https://www.cjoint.com/?3KmoUMhVSGI
dans la page grand livre à date quand on appui sur le bouton, la distribution devrait se faire dans les feuilles mais il ne se passe rien..
encore merci
Mélanie
merci à vous deux pour votre aide. Lermite, j'ai essayé d'enlever le point.. j'ai cherché sur le net rows.count des indications.. j'ai pas trouvé..
Et michel, j'ai essayé tes deux solutions plus haut et ça n'a pas fonctionné non plus..
Voici mon fichier
https://www.cjoint.com/?3KmoUMhVSGI
dans la page grand livre à date quand on appui sur le bouton, la distribution devrait se faire dans les feuilles mais il ne se passe rien..
encore merci
Mélanie
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 16:02
12 nov. 2013 à 16:02
Bonjour à vous deux,
J'ai essayé :
1- ligvide = Columns("A").Find("*", , , , , xlPrevious).Row + 1
2- Lign = .Range("a" & .Rows.Count).End(xlUp).Row + 1
3- Lign = .Range("A" & Rows.Count).End(xlUp).Row + 1
Rien ne se passe..
à un certain moment ça fonctionnait mais ça sautait une ligne entre chque transfert..maintenant plus rien ne fonctionne..
Mélanie
J'ai essayé :
1- ligvide = Columns("A").Find("*", , , , , xlPrevious).Row + 1
2- Lign = .Range("a" & .Rows.Count).End(xlUp).Row + 1
3- Lign = .Range("A" & Rows.Count).End(xlUp).Row + 1
Rien ne se passe..
à un certain moment ça fonctionnait mais ça sautait une ligne entre chque transfert..maintenant plus rien ne fonctionne..
Mélanie
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 16:11
12 nov. 2013 à 16:11
Encore moi!
Arrêter de chercher! j'ai peut-être trouvé..
Je vous reviens
Mélanie
Arrêter de chercher! j'ai peut-être trouvé..
Je vous reviens
Mélanie
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 16:23
12 nov. 2013 à 16:23
Bonjour
J'ai trouvé pourquoi ça ne s'inscivait plus.. en fait ça s'inscivait toujours dans mes feuilles mais j'avais fait tellement de test que j'avais des données dans les lignes 1000 de mes feuilles et je ne les voyais pas..
Alors avec ce code
Lign = .Range("a" & .Rows.Count).End(xlUp).Row + 1
ça fonctionne mais ça espace d'une ligne entre chaque distribution (seulement à chaque fois qu'on appui sur le bouton)
et j'ai essayé avec le code proposé par Michel
ligvide = Columns("A").Find("*", , , , , xlPrevious).Row + 1
mais là j'ai une erreur : 400
j'ai donc encore mon problème.. je continue de chercher
merci
J'ai trouvé pourquoi ça ne s'inscivait plus.. en fait ça s'inscivait toujours dans mes feuilles mais j'avais fait tellement de test que j'avais des données dans les lignes 1000 de mes feuilles et je ne les voyais pas..
Alors avec ce code
Lign = .Range("a" & .Rows.Count).End(xlUp).Row + 1
ça fonctionne mais ça espace d'une ligne entre chaque distribution (seulement à chaque fois qu'on appui sur le bouton)
et j'ai essayé avec le code proposé par Michel
ligvide = Columns("A").Find("*", , , , , xlPrevious).Row + 1
mais là j'ai une erreur : 400
j'ai donc encore mon problème.. je continue de chercher
merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 nov. 2013 à 17:13
12 nov. 2013 à 17:13
Bien reçu ton classeur, merci
Te propose une solution demain
Bonne soirée
Te propose une solution demain
Bonne soirée
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 17:17
12 nov. 2013 à 17:17
merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
12 nov. 2013 à 18:11
12 nov. 2013 à 18:11
heu !...
Tu dis transférer les colnne 1 à 6 du grand livre versles feuilles de comptes mais cela ne semble pas trop correspondre par E vide dan grand livre marqué "solde" dans les comptes...
Tu dis
Tu dis transférer les colnne 1 à 6 du grand livre versles feuilles de comptes mais cela ne semble pas trop correspondre par E vide dan grand livre marqué "solde" dans les comptes...
Tu dis
lanetmel
Messages postés
200
Date d'inscription
mercredi 24 août 2011
Statut
Membre
Dernière intervention
15 mars 2018
4
12 nov. 2013 à 18:41
12 nov. 2013 à 18:41
Bonjour Michel
E est vide dans les deux feuilles. Dans la deuille des comptes ensuite j'ai une formule pour le calcul du solde : ex pour le compte 33505
Sub calcul33505()
Dim LastLig As Long
Application.ScreenUpdating = False
With Worksheets("33505")
'Ligne de la dernière cellule remplie de colonne A
LastLig = .Cells(.Rows.Count, "E").End(xlEnd).Row
'On écrit la formule dans A2&"/"&B2 dans C2:Cxx puis on fige les valeurs
With .Range("E7:E" & LastLig)
.Formula = "=IF(RC[-4]>0,IF(RC[-2]>0,R[-1]C+RC[-2],R[-1]C-RC[-1]),"""")"
.Value = .Value
End With
End With
End Sub
Alors la colonne E se rempli
J'espère que cela répond à ta question
encore merci
Mélanie
E est vide dans les deux feuilles. Dans la deuille des comptes ensuite j'ai une formule pour le calcul du solde : ex pour le compte 33505
Sub calcul33505()
Dim LastLig As Long
Application.ScreenUpdating = False
With Worksheets("33505")
'Ligne de la dernière cellule remplie de colonne A
LastLig = .Cells(.Rows.Count, "E").End(xlEnd).Row
'On écrit la formule dans A2&"/"&B2 dans C2:Cxx puis on fige les valeurs
With .Range("E7:E" & LastLig)
.Formula = "=IF(RC[-4]>0,IF(RC[-2]>0,R[-1]C+RC[-2],R[-1]C-RC[-1]),"""")"
.Value = .Value
End With
End With
End Sub
Alors la colonne E se rempli
J'espère que cela répond à ta question
encore merci
Mélanie
Modifié par michel_m le 13/11/2013 à 09:37
https://www.cjoint.com/?3KnjK1J7suP
13 nov. 2013 à 23:16
Désolé de mon délai à te répondre.. J'ai été débordée toute la journée et je voulais regarder comme il faut avant de te revenir..
Premièrement : merci beaucoup du temps que tu as consacré à mon problème.
Deuxièmement : il y a un bug. J'ai regardé attentivement ton code mais je le comprends pas tellement.. (J'ai beaucoup de la difficulté avec les regroupements et les tableaux..)
Des données vont bel et bien s'inscire dans les feuilles mais pas nécessairement des données qui devraient y aller..
Ex : dans le compte 42123 :
ça me transfert les 3 lignes suivantes :
P008711 2013-10-01 0,14
P008711 2013-10-01 27,25
P008742 2013-10-24 513,61
le premier à comme # de compte : 33505 et la 2ème ligne 42118 et la 3ème 21340
alors aucune des lignes n'est bonne pour ce compte..
Alors je n'ai plus d'interligne lors de la copie mais ça ne copie pas les bonnes infos..
Je vais essayer de faire un mixte de ton code avec celui que j'avais déjà voir si je peux règler un ou l'autre des problème
merci encore
Mélanie
14 nov. 2013 à 07:11
Oups! Excuses moi
effectivement , il y a un décalage de 2 lignes
en effet je commençais le tableau T_grandlivre à la ligne 3 au lieu de la ligne1 !!!! :-(
donc il faut écrire
je viens d'essayer et en feuille 42123 j'ai ceci
https://www.cjoint.com/?3KohjgGdAwv
je n'ai pas testé la suite mais normalement ....'je brule un cierge !)
Bonne journée
14 nov. 2013 à 14:15
Tout fonctionne à merveille! Je te remercie énormément pour ton aide. C'est exactement ce que j'essayais de faire
Mélanie
14 nov. 2013 à 14:37
Et à bientôt pour de nouvelles z'aventures !