écraser ligne déjà existente par la nouvelle copiée macro xls

Fermé
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015 - 15 févr. 2015 à 12:33
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 - 23 févr. 2015 à 10:12
Bonjour à tous,

Je vous explique mon problème:

Je copie certaine cellule de ma feuille nommée:"FTD".
Je l'ai copie dans une autre feuille intitulée:"HISTORIC"
Les données se copient à la première ligne vide.
Ce que je veux, c'est lors d'une nouvelle copie, Si les informations en colonne A et B sont identique, effacer la ligne en question et la remplacer par la nouvelle.

Voici ma macro de base:
Sub SAUVEGARDER()

Dim Source As String
Dim Cible As String
Source = "FTD"
Cible = "HISTORIC"


'Transfert données de la fiche ModFaxture vers la fiche Client
Dim LigneEncours As Long
'Chargement du nom des feuilles origine et destination
'Calcul de la ligne courante
LigneEncours = Worksheets(Cible).Range("A" & Rows.Count).End(xlUp).Row + 1
'Copie des valeurs
With Worksheets(Cible)
.Range("A" & LigneEncours) = Worksheets(Source).Range("A2").Value
.Range("B" & LigneEncours) = Worksheets(Source).Range("F2").Value
.Range("C" & LigneEncours) = Worksheets(Source).Range("E40").Value
.Range("D" & LigneEncours) = Worksheets(Source).Range("H40").Value
.Range("E" & LigneEncours) = Worksheets(Source).Range("I40").Value
.Range("F" & LigneEncours) = Worksheets(Source).Range("J40").Value
.Range("G" & LigneEncours) = Worksheets(Source).Range("K40").Value
End With

'
End Sub

Quelqu'un peut-il m'aider svp?

Merci d'avance.
A voir également:

24 réponses

Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
Modifié par Le Pingou le 22/02/2015 à 14:22
Bonjour,
Ceci mérite une réponse : Pour finir je me pose une question, si vous avez dans le classeur technicien 2 feuille [Histo...] alors vous devez aussi les mettre à jour tout comme celles du classeur [FDT.xlsm] Oui ou Non ?


Vous avez une erreur dans les 2 déclarations [shso] [shcigl], le type d'objet est Worksheet (pas de S à la fin)


Salutations.
Le Pingou
0
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 14:15
Bonjour,

Oui effectivement les deux feuilles historic doivent être mise à jour.

Vous avez une solution, car là je bloque....

Cdt,
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
22 févr. 2015 à 14:25
Bonjour,
Merci de relire mon message corrigé ....
Salutations.
Le Pingou
0
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 14:46
Bonjour,

Lors de l'éxécution de la macro ce dernier me met que l'indice n'appartient pas à la selection la ligne qui pose problème est en dessous.

Set shcigl = Workbooks("FDT").Sheets("HISTORIC")

Je n'ai juste enlevé que enlevé les S à worksheet
Cdt,
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
22 févr. 2015 à 15:31
Bonjour,
Vous avez probablement omis l'instruction pour ouvrir le fichier cible à placer juste avant la ligne:
Workbooks.Open FileName:=("C:\FDT\FDT.xlsm")

0
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 15:50
Bonjour,

Un grand Merci ça marche!!!!

Je vais vous envoyé le document fini.

Seul chose pour les macro je passe par un ruban. lors de l'éxécution d'une macro le fichier source FDT.xlsm s'ouvre en même temps.

Une idée....

Cdt,

https://www.cjoint.com/c/EBwqbf5Nr5A à placer dans C:\
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426 > ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 23:01
Bonjour,
Concerne : Seul chose pour les macros je passe par un ruban. Lors de l'exécution d'une macro le fichier source FDT.xlsm s'ouvre en même temps.
Je n'y comprends rien car je suis sur Excel 2013 ... !
Salutations.
Le Pingou
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
22 févr. 2015 à 22:28
Bonjour,
Content pour vous.
Sauf votre respect, est-il possible que, au moins une fois vous preniez la peine de supprimer tous les modules vides dans les projets VBA .... !
Salutations.
Le Pingou
0
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 23:00
Bonsoir,

Sauf votre respect, comment fait on? Car impossible de les supprimer......
0
ksta89 Messages postés 77 Date d'inscription dimanche 15 février 2015 Statut Membre Dernière intervention 9 juin 2015
22 févr. 2015 à 23:06
Bonsoir,

En faite quand j'exécute une macro via le classeur tech, le classeur FDT s'ouvre ...

Cdt,
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
23 févr. 2015 à 08:19
Bonjour,
Impossible, mais c'est des connaissances de base, que se passe t'il lors d'un clic droit de souris sur l'objet concerné .... ?

0
Bonjour,

C'est bon j'ai pu supprimer les modules vides.

Et pour l'ouverture du classeur FDT lors de l'utilisation des macros dans un classeur techniciens vous avez une idée?
0
Le Pingou Messages postés 12045 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 25 avril 2024 1 426
23 févr. 2015 à 10:12
Bonjour,
Eh bien non pas d'idée tout comme les feuilles masquée inutilement.
0