XL 2019 Réorganiser un fichier avec une macro

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 !

Frankette

XLDnaute Nouveau
Bonjour Bonjour,

J'ai un fichier avec plusieurs colonnes de données que je souhaiterais réorganiser dans un nouvel onglet. Pour finir, ce fichier doit s'enregistrer au format CSV pour pouvoir être intégrer dans un logiciel de comptabilité.

J'ai réalisé l'enregistrement suivant mais il me manque la boucle. Je suis en train de faire les formation d'Excel Download mais je n'en suis pas encore là ^^, si vous pouviez me filer un petit coup de main je vous en serais très reconnaissant. Bonne journée 🙂

Sub Transforme_format_SageLigne100()
'
' Transforme_format_SageLigne100 Macro
' Passage de KOALA vers LIGNE 100 + Transfo CSV séparateur ;
'

'
ActiveCell.FormulaR1C1 = "='Base '!RC[1]"
Range("B2").Select
ActiveCell.FormulaR1C1 = "='Base '!RC[-1]"
Range("C2").Select
ActiveCell.FormulaR1C1 = "='Base '!RC"
Range("E2").Select
ActiveCell.FormulaR1C1 = "='Base '!RC[-1]"
Range("F2").Select
ActiveCell.FormulaR1C1 = "='Base '!RC[-1]"
Range("I2").Select
ActiveCell.FormulaR1C1 = "=IF('Base '!RC[-1]>0,""D"",""C"")"
Range("J2").Select
ActiveCell.FormulaR1C1 = "=IF('Base '!RC[-2]>0,'Base '!RC[-2],-'Base '!RC[-2])"
Range("A3").Select
End Sub
 

Pièces jointes

Solution
Just for the fun !
Ca fait la même chose:
VB:
Sub Transforme_format_SageLigne100()
' Transforme_format_SageLigne100 Macro
' Passage de KOALA vers LIGNE 100 + Transfo CSV séparateur ;
Taille = Sheets("Base ").Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To Taille
    Range("A" & i).FormulaR1C1 = "='Base '!RC[1]"
    Range("B" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("C" & i).FormulaR1C1 = "='Base '!RC"
    Range("E" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("F" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("I" & i).FormulaR1C1 = "=IF('Base '!RC[-1]>0,""D"",""C"")"
    Range("J" & i).FormulaR1C1 = "=IF('Base '!RC[-2]>0,'Base '!RC[-2],-'Base '!RC[-2])"
Next i
End Sub
Bonjour Sylvanu,

Merci pour réponse si rapide et si claire. Je comprend parfaitement votre "enrobage" et la boucle. Ca marche parfaitement et m'inspire pour de nouveaux défis 🙂.

Je prend bonne note de la balise et tâcherai d'y penser pour la prochaine fois.

Encore merci.
 
Just for the fun !
Ca fait la même chose:
VB:
Sub Transforme_format_SageLigne100()
' Transforme_format_SageLigne100 Macro
' Passage de KOALA vers LIGNE 100 + Transfo CSV séparateur ;
Taille = Sheets("Base ").Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To Taille
    Range("A" & i).FormulaR1C1 = "='Base '!RC[1]"
    Range("B" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("C" & i).FormulaR1C1 = "='Base '!RC"
    Range("E" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("F" & i).FormulaR1C1 = "='Base '!RC[-1]"
    Range("I" & i).FormulaR1C1 = "=IF('Base '!RC[-1]>0,""D"",""C"")"
    Range("J" & i).FormulaR1C1 = "=IF('Base '!RC[-2]>0,'Base '!RC[-2],-'Base '!RC[-2])"
Next i
End Sub
 
- 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

  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
213
Réponses
7
Affichages
532
  • Question Question
Microsoft 365 VBA sur outlook
Réponses
14
Affichages
949
Réponses
11
Affichages
712
Retour