création d'une macro dans EXCEL97 - Logiciels - Windows & Software
MarshPosté le 30-01-2013 à 16:56:05
Bonjour, Etant du niveau 0 en macro et VBA, je vous sollicite pour trouver une macro, un code (pas sûr du terme à utiliser) pour automatiser certaines taches répétitives sur EXCEL. Ce domaine m’intéresse beaucoup mais fautes de temps je ne peux m’y consacrer.
J’ai essayé de bien expliquer ce que je recherchais en mettant des copies des fichiers EXCEL, AVANT et APRES, ainsi que plusieurs indications utiles.
En espérant avoir été complet, dernière précision j’utilise EXCEL97
fichier exporté dans EXCEL : 6premières lignes sont à supprimer, les en-têtes de colonnes ne commencent qu'après (de A7 à I7 jusqu'à...) colonne A "CODO" colonne B "D" colonne C "C" colonne D "Date1" colonne E "Dte2" colonne F "Montant" colonne G "INFO" colonne H "Lettre" colonne I "SPEC"
Copie du fichier souhaité après la macro : (de A1 à L1 jusqu'à...) colonne A "CODO" colonne B "D" colonne C "C" colonne D "Date1" colonne E "Dte2" colonne F "Montant" colonne G "Montant retraité" colonne H "INFO" colonne I "Lettre" colonne J "SPEC" colonne K ">0" colonne L "<0"
Précisions sur les formules utilisées : Formule utilisée pour « Montant retraité » : =SI(ESTNUM(F2);F2;CNUM(DROITE(F2;1)&SUBSTITUE(F2;DROITE(F2;1);"" ))) Formule utilisée pour « >0 » : =SI(G2>0;G2 Formule utilisée pour « <0 » : =SI(G2<0;G2
Précisions sur les mises en forme : 1. Suppressions des 6 premières lignes 2. Désactiver le format fusionné de toutes les cellules 3. Trier la nouvelle plage (après suppression des 6 premières lignes) pour les colonnes de A à I, pour les lignes c’est variable selon la taille du fichier recopié 4. Insertion d’une nouvelle colonne intitulée « Montant retraité » à droite de « Montant » 5. Ajouter la formule =SI(ESTNUM(F2);F2;CNUM(DROITE(F2;1)&SUBSTITUE(F2;DROITE(F2;1);"" ))) 6. Recopier cette formule vers le bas : selon la taille du fichier 7. Ajouter 2 nouvelles colonnes à droite de la colonne « SPEC » : 1 intitulée « >0 » 1 intitulée « <0 » 8. Comme pour le point 6. Recopier les formules vers le bas 9. Pour les 3 nouvelles colonnes « Montant retraité » « >0 » et « <0 » appliquer le format de cellule Nombre avec séparateurs de milliers
Et le top serait de pouvoir copier cette plage, A2 : L ? (dernière ligne non connue), dans une base de données ACCESS sans avoir à délimiter la plage
Marsh Posté le 30-01-2013 à 16:56:05
Bonjour,
Etant du niveau 0 en macro et VBA, je vous sollicite pour trouver une macro, un code (pas sûr du terme à utiliser) pour automatiser certaines taches répétitives sur EXCEL.
Ce domaine m’intéresse beaucoup mais fautes de temps je ne peux m’y consacrer.
J’ai essayé de bien expliquer ce que je recherchais en mettant des copies des fichiers EXCEL, AVANT et APRES, ainsi que plusieurs indications utiles.
En espérant avoir été complet, dernière précision j’utilise EXCEL97
fichier exporté dans EXCEL :
6premières lignes sont à supprimer, les en-têtes de colonnes ne commencent qu'après (de A7 à I7 jusqu'à...)
colonne A "CODO"
colonne B "D"
colonne C "C"
colonne D "Date1"
colonne E "Dte2"
colonne F "Montant"
colonne G "INFO"
colonne H "Lettre"
colonne I "SPEC"
Copie du fichier souhaité après la macro : (de A1 à L1 jusqu'à...)
colonne A "CODO"
colonne B "D"
colonne C "C"
colonne D "Date1"
colonne E "Dte2"
colonne F "Montant"
colonne G "Montant retraité"
colonne H "INFO"
colonne I "Lettre"
colonne J "SPEC"
colonne K ">0"
colonne L "<0"
Précisions sur les formules utilisées :
Formule utilisée pour « Montant retraité » :
=SI(ESTNUM(F2);F2;CNUM(DROITE(F2;1)&SUBSTITUE(F2;DROITE(F2;1);"" )))
Formule utilisée pour « >0 » :
=SI(G2>0;G2
Formule utilisée pour « <0 » :
=SI(G2<0;G2
Précisions sur les mises en forme :
1. Suppressions des 6 premières lignes
2. Désactiver le format fusionné de toutes les cellules
3. Trier la nouvelle plage (après suppression des 6 premières lignes) pour les colonnes de A à I, pour les lignes c’est variable selon la taille du fichier recopié
4. Insertion d’une nouvelle colonne intitulée « Montant retraité » à droite de « Montant »
5. Ajouter la formule =SI(ESTNUM(F2);F2;CNUM(DROITE(F2;1)&SUBSTITUE(F2;DROITE(F2;1);"" )))
6. Recopier cette formule vers le bas : selon la taille du fichier
7. Ajouter 2 nouvelles colonnes à droite de la colonne « SPEC » :
1 intitulée « >0 »
1 intitulée « <0 »
8. Comme pour le point 6. Recopier les formules vers le bas
9. Pour les 3 nouvelles colonnes « Montant retraité » « >0 » et « <0 » appliquer le format de cellule Nombre avec séparateurs de milliers
Et le top serait de pouvoir copier cette plage, A2 : L ? (dernière ligne non connue), dans une base de données ACCESS sans avoir à délimiter la plage
D’avance je vous remercie pour vos contributions