• Initiateur de la discussion Initiateur de la discussion br44
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

br44

XLDnaute Impliqué
Bonjour le forum ,


Je me permets de vous envoyer ce petit message pour savoire si il est possible de modifier la macro jointe .


Je joint un fichier avec la macro,le rèsultat quelle me donne et le rèsulat que je voudrais obtenire .


La deuxième copie seplace deux lignes trop tot et donc m'efface la fin du document prècèdent .


En espèrant que le fichier sera suffisament claire je vous dis à plus sur se post et vous remercie par avance pour le coup de main .
Amicalement BR44
 

Pièces jointes

Re : Decalge de lignes

Re-bonjour,

tu verras dans le fichier joint une petite annotation sur ce qu'il me semble être les lignes de code à changer.

Un exemple, sans données confidentielles mais avec la macro réelle (dans un module) et le vrai nom des onglets aurait permis de t'aider plus efficacement.

A bientôt donc si ce n'est pas suffisant.
 
Re : Decalge de lignes

Re: rebonjour à tous ,


HASCO: je te remerçie pour ton fichier ,mais tu à cibler la mauvaise section il fudrait appliquer la modif pour cette partie :

Sheets("Détail").Range("1:29").Copy Sheets("T1").Range("A65536").End(xlUp).


J'ai essayer plusieur formule la seule qui me conviendrait donnerais :

Sheets("Détail").Range("1:29").Copy Sheets("T1").Range("A65536").End(xlUp) (2) .


Le seul problème dans cette configuration est que la copie au dèpart se fait en A3 au lieu de A1. Il faudrait donc rajouter une condition qui supprime les deux première lignes mais juste pour la "refclient" C001 et là je bloc ??😕

Si tu as une solution n'hèsite pas en attendant je continue de chercher de mon coté . je te dis donc à plus en te remerciant par avances .
Amicalement BR44
 
Re : Decalge de lignes

Re bonjour,

Désolé, mais je répète que sans exemple précis, avec les bons noms (onglets) aux bons endroits, il est difficle de deviner sur quoi s'applique réellement la modification.

A bientôt et bonne fin d'après-midi pluvieuse
 
Re : Decalge de lignes

Re

En faisant comme suit, est-ce que cela te convient:

rajouter une variable nommer 'Ligne"

Ligne=Range("A65536").End(xlUp)
if Ligne=1 then Ligne=Ligne+2
Sheets("Détail").Range("1:29").Copy Sheets("T1").Range("A" & Ligne)

Sinon, je peux pas voir....
 
Re : Decalge de lignes

Re: rebonjour Hasco ,le forum


En rèponse à ton dernier message je te joint un fichier modifier contenant les divers èlèments que tu ma demander .

Espèrant que cela t'aide je te dis merçi et à bientôt sur se fil .

Amicalement BR44
 

Pièces jointes

Re : Decalge de lignes

Re,RE,re 😉

bon je pense être parvenu au résultat souhaité:

Code:
'J'enregistre les fiches pour la feuille "T1"
If Range("G3").Value >= "C001" And Range("G3").Value <= "C054" Then
   If Range("G3").Value = "C001" Then
          L = 1
    Else: L = 5
    End If
'si une modification n'est pas en cours
    If TrouveRefC Is Nothing Then
        [COLOR="red"]ligne = Sheets("T1").Range("A65536").End(xlUp).Row
        If ligne > 1 Then ligne = ligne + 2[/COLOR]    
        Sheets("Détail").Range("1:29").Copy Sheets("T1").Range("A" & [COLOR="red"]ligne[/COLOR])
        Sheets("Facture").Range("1:50").Copy
   With Sheets("T1").Range("A65536").End(xlUp).Offset[COLOR="Red"](2)[/COLOR]
          .PasteSpecial Paste:=xlValues
          .PasteSpecial Paste:=xlFormats
      End With
    Else
'si une modification est en cours
        Sheets("Détail").Range("A1:G29").Copy TrouveRefC.Offset(-2, -6)
        Sheets("Facture").Range("C26:G38").Copy TrouveRefC.Offset(52, -4)
        Sheets("Facture").Range("G39:G44").Copy TrouveRefC.Offset(65, 0)
End If
End If

Toutefois, j'ai eu du mal à faire les tests pour contourner le manque de totalité des informations notament la manière dont est retourné ce qui est je suppose la référence Client (TrouveRefC)

A plus

A bientôt.
 
Re : Decalge de lignes

Bonsoir br44,

Non, je la déclare:

Dim Ligne as Integer.

Car elle représente un numéro de ligne et non une cellule (Objet Range).

dis moi si ça fonctionne correctement maintenant

A+
 
Re : Decalge de lignes

Re: rebonsoire à tous ,


Je viens de tester ta formule est cela marche très bien .

Je te remercie de nouveaux et te dis mainteant à plus pour règler le problème de saut de pages .


Merçi aussi à tous ceux qui ont pris le temps de lire se poste .

Amicalement Br44
 
Re : Decalge de lignes

bonjour,

En espérant que br44, lise cette petite rectification:

Comme me l'a fait gentillement remarqué bhbh:

Bonsoir,
tu as indiqué à br44 de déclarer le numéro de ligne en Integer...
Integer va de -32 768 et 32 767, une feuille excel va (2003) jusqu'à 65536...
Mieux vaut le déclarer en Long (-2 147 483 648 et 2 147 483 647)
Amicalement

D'autant plus qu'avec la venue d'Exel 2007 le nombre de lignes et de colonnes augmente considérablement (1 048 576 lignes et 16 384 colonnes).

donc Merci BhBH
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

L
Réponses
9
Affichages
1 K
Q
Réponses
10
Affichages
2 K
W
Réponses
10
Affichages
2 K
Willam 76000
W
P
Réponses
1
Affichages
1 K
P
T
  • Question Question
Réponses
15
Affichages
3 K
tabernake
T
Retour