Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowindex ?)

papapaul

XLDnaute Impliqué
Bonjour Forum, compliqué pour moi

Je fais des modifications dans des lignes (copiées à partir de Feuil1) sur une FeuilX.
Le but du jeu, c'est que une fois les corrections apportées FeuilX, ces lignes retrouvent leur emplacement d'origine dans Feuil1.
J'ai comme idée le bricolage suivant. Indiquer en colonne J de chaque ligne à copier
le n° de ces lignes (=RowIndex ??), les autres cellules sont occupées.
Ensuite, après les corrections, un dblclick sur la cellule ou est le n° de ligne, la ligne modifiée écraserai la ligne d'origine de la Feuil1. (By Val Target etc…)

Merci d'avance au Forum
 
G

Guest

Guest
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Bonjour Papapaul,

Cela semble être une bonne idée.

Où est la question?

A+
 

papapaul

XLDnaute Impliqué
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Bonjour Hasco, Skoobi, Forum

Ben, ma question ..... ??
C'est comment réalisé par macro l'idée de bricolage que
j'ai expliqué ci-avant. Si tant est que cela soit possible.
Moi je patauge sévère

Par rapport à ça (entre autres) j'ai mis un exemple de fichier dans
un précédent post du 08/08 à 12 h 47 mais j'ai pas eu de réponse.
(Sauf une de notre ami Skoobi mais c'est pas tout a fait ça.)
Je dois être trop compliqué (et trop bavard.)

Je le remets ici.

Merci d'avance
 

Pièces jointes

  • Extractions lignes doublons avec datesv2.xls
    69.5 KB · Affichages: 50
  • Extractions lignes doublons avec datesv2.xls
    69.5 KB · Affichages: 44
  • Extractions lignes doublons avec datesv2.xls
    69.5 KB · Affichages: 50
G

Guest

Guest
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Re,

Si cela concerne un autre fil, il faut le faire remonter.
Sinon, donnes nous un exemple de ce que tu as déjà fait pour illustrer ta question, qui est trop imprécise.

Le classeur que tu nous donnes n'a à priori rien à voir avec la question.

A+
 

skoobi

XLDnaute Barbatruc
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Re bonjour papapaul,
salue Ges , ça fait plaisir de te croiser.

papapaul, pourquoi avoir créer une nouvelle discussion?
"l'originale" ici.
Ce que je voudrais, c'est qu'elles écrasent celles d'origine.
Quand tu veux écraser l'original, dans la feuil1, comment fais-tu puisqu'il y a des doublons?
 

skoobi

XLDnaute Barbatruc
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind


Pourquoi pas mais alors il faudrait que tu ajoutes ce numéro de ligne en colonne J dans le code du bouton "Traiter".
 

papapaul

XLDnaute Impliqué
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Merci le Forum,

J'ai recrée un fil parceque au départ, je parlais de supprimer des
lignes ce qui n'est plus la cas. L'intitulé du fil ne collait plus.

Oui Skoobi, c'est bien dans le code du bouton que je dois mettre
quelquechose qui donne le n° de ligne en colonne J.

Hasco, le fichier que j'ai mis dans ce fil est le bon.

Merci XLD
 
G

Guest

Guest
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Re, Papapaul,
Skoobi

J'avais pas vu les explications en feuil3. Excuses.

J'ai regardée la macro, mais comme elle est d'une écriture trop abstraite pour moi aujourd'hui. Je passe là main.

A+
 

skoobi

XLDnaute Barbatruc
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Re,
Oui Skoobi, c'est bien dans le code du bouton que je dois mettre
quelquechose qui donne le n° de ligne en colonne J.

En bleu ce qu'il faut ajouter:

Code:
Sub Extractionlignesdoublons()


    Dim i&, a&, b&, fin&, fin1&, aa As Variant, bb As Variant, cc As Variant
.....
......

    If y = 1 Then Exit Sub
    For i = 1 To y - 1
        a = bb(7, i) + 1
        Feuil1.Rows(a).Copy Sheets("Plus Récents").Range("A65536").End(xlUp).Offset(1, 0)
[COLOR=Blue][B]       Sheets("Plus Récents").Range("A65536").End(xlUp).Offset(0, 9).Value = a[/B][/COLOR]
       'For Each Row In Feuil1.Rows(a)
       'RowIndex.Copy Sheets("Plus Récents").Range("A65536").End(xlUp).offset(1, 10)
        'Next Row
        
    Next i
    y = 1
    ReDim cc(8, y)
.....
........
        Sheets.Add before:=Sheets(1)
        ActiveSheet.Name = ("Autres")

    If y = 1 Then Exit Sub
    For i = 1 To y - 1
        a = cc(7, i) + 1
        Feuil1.Rows(a).Copy Sheets("Autres").Range("A65536").End(xlUp).Offset(1, 0)
        [COLOR=Blue][B]Sheets("Autres").Range("A65536").End(xlUp).Offset(0, 9).Value = a[/B][/COLOR]
    Next i
      Call Ligneentête
      Sheets("Plus Récents").Select
    
End Sub

Ensuite reprend mon premier code sur l'autre discussion pour pouvoir modifier la ligne dans Feuil1, et reviens nous voir si tu as du mal.
 

papapaul

XLDnaute Impliqué
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Re Skoobi

J'ai bien fait comme tu dis. Pour le n° de ligne, c'est nickel.
Le n° de ligne se met bien en colonne J des 2 feuilles créées.

Pour le doubleclick (j'ai mis le code dans Thisworkbook)

Mon idée c'est que si il y a des lignes doublons, il y a très certainement
eu des erreurs lors de la dernière saisie. C'est pout ça que j'isole les
"Plus Récents" et si c'est pas là l'erreur, je vérifie dans les lignes "Autres".

Pour chaque ligne rectifiée, aussitôt fait, avant de passer à la ligne suivante, un simple doubleclick devrait faire en sorte que la ligne d'origine soit "écrasée", c'est pour faire ça que je pensais utiliser les n° de ligne.
Ca me permettrait de gagner énormément de temps.
Je peux le faire manuellement mais en vrai c'est toutes les semaines que j'ai environ 150 lignes à rectifier, fastidieux

Avec tes codes (Target...), ça recopient bien en Feuil1 mais en s'ajoutant après les lignes déjà présentes, pas en écrasant les originales comme je le souhaiterais.

Trop compliqué pour moi mais je continue à chercher.
En tout cas pleins de merci et bravo

Vive XLD
 

skoobi

XLDnaute Barbatruc
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

Voici le code pour modifier la ligne dans feuil1, avec les commentaires en espérant que tu comprennes:

Code:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Dim Lig As Long
'si la feuille active est "Autres" ou "Plus Récents"
If Sh.Name = "Autres" Or Sh.Name = "Plus Récents" Then
'on récupère la ligne indiqué en colonne J
  Lig = Sh.Range("J" & Target.Row).Value
  With Sheets("Feuil1")
  'on copie la ligne modifiée vers la Feuil1
  Sh.Rows(Target.Row).Copy .Rows(Lig)
  'on enlève l'info de la ligne dans Feuil1.
  .Range("J" & Lig).Clear
  End With
  'ce code permet de sortir de la cellule, pour ne pas la modifier puisque ce n'est
  'pas le but recherché.
  Cancel = True
End If
End Sub
 

papapaul

XLDnaute Impliqué
Re : Comment recopier des lignes modifiées vers la feuille d'origine (Target, Rowind

SKOOBI LE MAGICIEN,

Ca m'a l'air parfait, je joins une V5 ou j'ai rectifié 2,3 petites choses.
Notamment ici : aa(i, 16) = aa(i, 1) & "#" & aa(i, 2) & "#" & aa(i, 4) & "#" & aa(i, 5) & "#" & aa(i, 6) & "#" & aa(i, 7) & "#" & aa(i, 8) & "#" & aa(i, 9)
Dix milles mercis à Paritec pour les codes.

C'est bien i et pas 1 dans aa(i, 2) : y avait une petite erreur.
Comme je vais jusqu'a la colonne I, pour pas prendre de risques, j'ai modifié tous les 6 par 16, tous les 7 par 17 et tous les 8 par 18 dans les variables : aa(i, 16) = ...: aa(i, 17) = ...aa(i, 18) etc...

Maintenant je vais essayé de faire la même chose mais cette fois non pas
par rapport à des doublons de lignes mais des doublons dans une colonne
précise mais qui serait variable selon les fichiers. Je la définirait avec une intputbox.
Et puis aussi, pour la recopie des lignes, que le dblclick soit remplacer par un simple click sur la cellule ou est le n° (colonne J), cette cellule deviendrait ainsi une sorte de bouton OK.
C'est en cours, si j'y arrive pas.............HELP

Merci à tous
 

Pièces jointes

  • Extractions lignes doublons avec dates V5.xls
    78 KB · Affichages: 46
  • Extractions lignes doublons avec dates V5.xls
    78 KB · Affichages: 45
  • Extractions lignes doublons avec dates V5.xls
    78 KB · Affichages: 51
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…