écraser ligne déjà existente par la nouvelle copiée macro xls
ksta89
Messages postés
77
Date d'inscription
Statut
Membre
Dernière intervention
-
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
Le Pingou Messages postés 12249 Date d'inscription Statut Contributeur Dernière intervention -
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.
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:
- écraser ligne déjà existente par la nouvelle copiée macro xls
- Darkino nouvelle adresse - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Partager photos en ligne - Guide
- Extreme download nouvelle adresse - Accueil - Outils
- Aller à la ligne excel - Guide
24 réponses
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
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
Bonjour,
Vous avez probablement omis l'instruction pour ouvrir le fichier cible à placer juste avant la ligne:
Workbooks.Open FileName:=("C:\FDT\FDT.xlsm")
Vous avez probablement omis l'instruction pour ouvrir le fichier cible à placer juste avant la ligne:
Workbooks.Open FileName:=("C:\FDT\FDT.xlsm")
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:\
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:\
Oui effectivement les deux feuilles historic doivent être mise à jour.
Vous avez une solution, car là je bloque....
Cdt,
Merci de relire mon message corrigé ....
Salutations.
Le Pingou
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,