Si à la fin de la procédure, tu désires copier le rés ultat de la colonne O vers la colonne H,
il manque une ligne de code...
Regarde la dernière ligne de la procédure!
'--------------------------------------------------------------
Sub test1()
Dim Rg As Range, DerLig As Long
'Rg est une variable "OBJECT" de type RANGE.
With ActiveSheet
'Détermine la dernière ligne occupée de la colonne H
'la colonne H contient les données
DerLig = .Range("h" & .Rows.Count).End(xlUp).Row
'Détermine la plage à traiter
Set Rg = .Range("o6:o" & DerLig)
End With
'D'un seul coup copie la formule sur toute la plage
With Rg
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
'Remplace les formules par la valeur seulement
.Value = .Value
.Cut Rg.Offset(, -7) '<<<<======= Ligne ajoutée
End With
End Sub
'--------------------------------------------------------------
MichD
Si à la fin de la procédure, tu désires copier le rés ultat de la colonne O vers la colonne H,
il manque une ligne de code...
Regarde la dernière ligne de la procédure!
'--------------------------------------------------------------
Sub test1()
Dim Rg As Range, DerLig As Long
'Rg est une variable "OBJECT" de type RANGE.
With ActiveSheet
'Détermine la dernière ligne occupée de la colonne H
'la colonne H contient les données
DerLig = .Range("h" & .Rows.Count).End(xlUp).Row
'Détermine la plage à traiter
Set Rg = .Range("o6:o" & DerLig)
End With
'D'un seul coup copie la formule sur toute la plage
With Rg
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
'Remplace les formules par la valeur seulement
.Value = .Value
.Cut Rg.Offset(, -7) '<<<<======= Ligne ajoutée
End With
End Sub
'--------------------------------------------------------------
MichD
Si à la fin de la procédure, tu désires copier le rés ultat de la colonne O vers la colonne H,
il manque une ligne de code...
Regarde la dernière ligne de la procédure!
'--------------------------------------------------------------
Sub test1()
Dim Rg As Range, DerLig As Long
'Rg est une variable "OBJECT" de type RANGE.
With ActiveSheet
'Détermine la dernière ligne occupée de la colonne H
'la colonne H contient les données
DerLig = .Range("h" & .Rows.Count).End(xlUp).Row
'Détermine la plage à traiter
Set Rg = .Range("o6:o" & DerLig)
End With
'D'un seul coup copie la formule sur toute la plage
With Rg
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
'Remplace les formules par la valeur seulement
.Value = .Value
.Cut Rg.Offset(, -7) '<<<<======= Ligne ajoutée
End With
End Sub
'--------------------------------------------------------------
MichD
La formule s'écrit sur une seule ligne, mais comme cette derniè re est longue, le service de
messagerie l'a transposée sur 2 lignes. Tu dois la remettre sur une seule ligne dans Excel où
utiliser cette syntaxe.
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
MichD
La formule s'écrit sur une seule ligne, mais comme cette derniè re est longue, le service de
messagerie l'a transposée sur 2 lignes. Tu dois la remettre sur une seule ligne dans Excel où
utiliser cette syntaxe.
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
MichD
La formule s'écrit sur une seule ligne, mais comme cette derniè re est longue, le service de
messagerie l'a transposée sur 2 lignes. Tu dois la remettre sur une seule ligne dans Excel où
utiliser cette syntaxe.
.Formula = "=LEFT(" & Rg(1).Offset(, -7).Address(0, 0) & _
"," & Len(Rg(1).Offset(, -7).Value) - 4 & ")"
MichD
Pourquoi se compliquer la vie quand on peut faire simple :
La macro pour la feuille Camille :
'-------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:F").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = False
End Sub
'-------------------------------------------------------
Ton fichier avec la macro dans le module1
http://www.cjoint.com/c/GDuxMqmRWzi
MichD
Pourquoi se compliquer la vie quand on peut faire simple :
La macro pour la feuille Camille :
'-------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:F").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = False
End Sub
'-------------------------------------------------------
Ton fichier avec la macro dans le module1
http://www.cjoint.com/c/GDuxMqmRWzi
MichD
Pourquoi se compliquer la vie quand on peut faire simple :
La macro pour la feuille Camille :
'-------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:F").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = False
End Sub
'-------------------------------------------------------
Ton fichier avec la macro dans le module1
http://www.cjoint.com/c/GDuxMqmRWzi
MichD
Je viens de m'apercevoir que la macro fait disparaître la colonne "Q uantité" suite à une
inattention. Voici la correction.
Comme le format semble similaire à la procédure que j'avais fai te pour l'autre fichier que tu
avais soumis, la procédure servant à la compilation devrait fon ctionner sur cette feuille.
Évidemment, cette feuille doit être dans le même classeur que le précédent. (copier-coller)
'----------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
'----------------------------------------------------------
MichD
Je viens de m'apercevoir que la macro fait disparaître la colonne "Q uantité" suite à une
inattention. Voici la correction.
Comme le format semble similaire à la procédure que j'avais fai te pour l'autre fichier que tu
avais soumis, la procédure servant à la compilation devrait fon ctionner sur cette feuille.
Évidemment, cette feuille doit être dans le même classeur que le précédent. (copier-coller)
'----------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
'----------------------------------------------------------
MichD
Je viens de m'apercevoir que la macro fait disparaître la colonne "Q uantité" suite à une
inattention. Voici la correction.
Comme le format semble similaire à la procédure que j'avais fai te pour l'autre fichier que tu
avais soumis, la procédure servant à la compilation devrait fon ctionner sur cette feuille.
Évidemment, cette feuille doit être dans le même classeur que le précédent. (copier-coller)
'----------------------------------------------------------
Sub Mise_En_Page_Feuille_Camille()
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
'----------------------------------------------------------
MichD
Le samedi 22 avril 2017 13:13:46 UTC+3, Elie Chayo a écrit :Le vendredi 21 avril 2017 14:01:57 UTC+3, MichD a écrit :
> Je viens de m'apercevoir que la macro fait disparaître la colonn e "Quantité" suite à une
> inattention. Voici la correction.
>
> Comme le format semble similaire à la procédure que j'avais faite pour l'autre fichier que tu
> avais soumis, la procédure servant à la compilation devrait fonctionner sur cette feuille.
> Évidemment, cette feuille doit être dans le même class eur que le précédent. (copier-coller)
>
> '----------------------------------------------------------
> Sub Mise_En_Page_Feuille_Camille()
> Application.ScreenUpdating = False
> With ActiveSheet
> With .Range("G:I")
> .Replace " €", "", xlPart
> .Replace " ", "", xlPart
> .Replace "+", "", xlPart
> .Replace ",", ".", xlPart
> .NumberFormat = "# ### ##0.00 €"
> End With
> With .Range("J:J")
> .Replace " ", "", xlPart
> .Replace "+", "", xlPart
> .Replace "(", "", xlPart
> .Replace ")", "", xlPart
> .Replace ",", ".", xlPart
> End With
> With .Range("F:F")
> .Replace ",", ".", xlPart
> End With
> .Range("C:E").Delete
> .Range("B5") = "SRD"
> .Range("A:B").EntireColumn.AutoFit
> End With
> Application.ScreenUpdating = True
> End Sub
> '----------------------------------------------------------
>
> MichD
Bonjour MichD,
Je suis content que tu m'aies relancé car je n'ai plus osé t' en parler.
Le fichier que tu m'as envoyé avec la macro fonctionnait à me rveille; J'ai voulu d'abord lancer le début de macro pour ouvrir le cl asseur résultat et y déplacer les 3 feuilles. Puis appliquer le b out de macro en le rajoutant à la suite; en la lançant le ré sultat n'était pas celui attendu; une colonne a disâru et les sig nes ne sont pas disparus.Je me suis dit que j'allais appliquer le bout de m acro uniquement aux 2 autres feuilles séparément; cela ne marche pas. et je revenais en ce moment pour reprendre le fichier et la macro et b ien vérifier la structure de Camille par rapport aux 2 autres. Je vois ton message.
J'ai pris beaucoup de ton temps et en suis conscient. Moi-même qui suis en déplacement au Proche Orient pendant encore 3 semaines, j'att endais avec impatience l'ouverture des sessions de déclarations fiscal es le 12 avril pour commencer, puisque je fais certaines comptabilités . Et voilà que 10 jours sont passés, et je m'acharne à trouv er.
je vais essayer ton bout de macro. Sinon, je vais me déclarer inco mpétent et finir manuellement. Je ne m'en sers qu'une fois par mois et c'est par esprit de recherche que je voulais y arriver.
Merci encore. quelque soit le résultat, je reviens dire ce qui en est.
Bonjour,
je viens dire où j'en suis. Pas encore le miracle. Je me suis aper çu que la feuille que tu avais traitée après mon envoi, n'av ait pas la même structure que celles que j'avais pour les autres noms. J'avais supprimé 2 colonnes car avec les précédentes macros , les colonnes devaient être adjacentes.J'ai donc
-enregistré les fichier csv en xls
-appliqué cette macro (la tienne) à laquelle j'ai rajouté quelques lignes au début:
__________________________________________________________________
Sub Mise_En_Page_Feuille()
'
Windows("camille.xls").Activate
Sheets("camille").Select
Range("J4").Select
Selection.Cut
Range("H4").Select
ActiveSheet.Paste
Range("G:G,J:J").Select
Range("J1").Activate
Selection.Delete Shift:=xlToLeft
'
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
_________________________________________________________________________ ______
Cela fonctionne individuellement car je voulais regrouper de suite les fe uilles sous un classeur "résultat" puis y modifier chacune mais cela n 'a pas marché.
je vais donc auparavant ouvrir les classeurs et les feuilles reçues avec ce bout de macro "Demarrage"
______________________________________
Sub demarrage()
' ouverture des fichiers
ChDir "D:Mes documentsBourse"
Workbooks.Open Filename:= _
"D:Mes documentsBourseresultat.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macrocamille.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroelie.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroepoux.xls"
End Sub
___________________________________________________
ensuite modifier ces feuilles avec la macro du dessus (la tienne)
et enfin déplacer chaque feuille avec ceci
____________________________________
'Déplacer les 3 en dernier sur résultat.xls
Windows("elie.xls").Activate
Sheets("elie").Select
Sheets("elie").Move After:=Workbooks("Resultat.xls").Sheets(1)
Windows("camille.xls").Activate
Sheets("camille").Select
Sheets("camille").Move After:=Workbooks("Resultat.xls").Sheets(2)
Windows("epoux.xls").Activate
Sheets("epoux").Select
Sheets("epoux").Move After:=Workbooks("Resultat.xls").Sheets(3)
____________________________________________________
est-ce que cela te parait correct?
Bonne fin de dimanche
Le samedi 22 avril 2017 13:13:46 UTC+3, Elie Chayo a écrit :
> Le vendredi 21 avril 2017 14:01:57 UTC+3, MichD a écrit :
> > Je viens de m'apercevoir que la macro fait disparaître la colonn e "Quantité" suite à une
> > inattention. Voici la correction.
> >
> > Comme le format semble similaire à la procédure que j'avais faite pour l'autre fichier que tu
> > avais soumis, la procédure servant à la compilation devrait fonctionner sur cette feuille.
> > Évidemment, cette feuille doit être dans le même class eur que le précédent. (copier-coller)
> >
> > '----------------------------------------------------------
> > Sub Mise_En_Page_Feuille_Camille()
> > Application.ScreenUpdating = False
> > With ActiveSheet
> > With .Range("G:I")
> > .Replace " €", "", xlPart
> > .Replace " ", "", xlPart
> > .Replace "+", "", xlPart
> > .Replace ",", ".", xlPart
> > .NumberFormat = "# ### ##0.00 €"
> > End With
> > With .Range("J:J")
> > .Replace " ", "", xlPart
> > .Replace "+", "", xlPart
> > .Replace "(", "", xlPart
> > .Replace ")", "", xlPart
> > .Replace ",", ".", xlPart
> > End With
> > With .Range("F:F")
> > .Replace ",", ".", xlPart
> > End With
> > .Range("C:E").Delete
> > .Range("B5") = "SRD"
> > .Range("A:B").EntireColumn.AutoFit
> > End With
> > Application.ScreenUpdating = True
> > End Sub
> > '----------------------------------------------------------
> >
> > MichD
>
> Bonjour MichD,
> Je suis content que tu m'aies relancé car je n'ai plus osé t' en parler.
> Le fichier que tu m'as envoyé avec la macro fonctionnait à me rveille; J'ai voulu d'abord lancer le début de macro pour ouvrir le cl asseur résultat et y déplacer les 3 feuilles. Puis appliquer le b out de macro en le rajoutant à la suite; en la lançant le ré sultat n'était pas celui attendu; une colonne a disâru et les sig nes ne sont pas disparus.Je me suis dit que j'allais appliquer le bout de m acro uniquement aux 2 autres feuilles séparément; cela ne marche pas. et je revenais en ce moment pour reprendre le fichier et la macro et b ien vérifier la structure de Camille par rapport aux 2 autres. Je vois ton message.
> J'ai pris beaucoup de ton temps et en suis conscient. Moi-même qui suis en déplacement au Proche Orient pendant encore 3 semaines, j'att endais avec impatience l'ouverture des sessions de déclarations fiscal es le 12 avril pour commencer, puisque je fais certaines comptabilités . Et voilà que 10 jours sont passés, et je m'acharne à trouv er.
> je vais essayer ton bout de macro. Sinon, je vais me déclarer inco mpétent et finir manuellement. Je ne m'en sers qu'une fois par mois et c'est par esprit de recherche que je voulais y arriver.
> Merci encore. quelque soit le résultat, je reviens dire ce qui en est.
Bonjour,
je viens dire où j'en suis. Pas encore le miracle. Je me suis aper çu que la feuille que tu avais traitée après mon envoi, n'av ait pas la même structure que celles que j'avais pour les autres noms. J'avais supprimé 2 colonnes car avec les précédentes macros , les colonnes devaient être adjacentes.J'ai donc
-enregistré les fichier csv en xls
-appliqué cette macro (la tienne) à laquelle j'ai rajouté quelques lignes au début:
__________________________________________________________________
Sub Mise_En_Page_Feuille()
'
Windows("camille.xls").Activate
Sheets("camille").Select
Range("J4").Select
Selection.Cut
Range("H4").Select
ActiveSheet.Paste
Range("G:G,J:J").Select
Range("J1").Activate
Selection.Delete Shift:=xlToLeft
'
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
_________________________________________________________________________ ______
Cela fonctionne individuellement car je voulais regrouper de suite les fe uilles sous un classeur "résultat" puis y modifier chacune mais cela n 'a pas marché.
je vais donc auparavant ouvrir les classeurs et les feuilles reçues avec ce bout de macro "Demarrage"
______________________________________
Sub demarrage()
' ouverture des fichiers
ChDir "D:Mes documentsBourse"
Workbooks.Open Filename:= _
"D:Mes documentsBourseresultat.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macrocamille.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroelie.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroepoux.xls"
End Sub
___________________________________________________
ensuite modifier ces feuilles avec la macro du dessus (la tienne)
et enfin déplacer chaque feuille avec ceci
____________________________________
'Déplacer les 3 en dernier sur résultat.xls
Windows("elie.xls").Activate
Sheets("elie").Select
Sheets("elie").Move After:=Workbooks("Resultat.xls").Sheets(1)
Windows("camille.xls").Activate
Sheets("camille").Select
Sheets("camille").Move After:=Workbooks("Resultat.xls").Sheets(2)
Windows("epoux.xls").Activate
Sheets("epoux").Select
Sheets("epoux").Move After:=Workbooks("Resultat.xls").Sheets(3)
____________________________________________________
est-ce que cela te parait correct?
Bonne fin de dimanche
Le samedi 22 avril 2017 13:13:46 UTC+3, Elie Chayo a écrit :Le vendredi 21 avril 2017 14:01:57 UTC+3, MichD a écrit :
> Je viens de m'apercevoir que la macro fait disparaître la colonn e "Quantité" suite à une
> inattention. Voici la correction.
>
> Comme le format semble similaire à la procédure que j'avais faite pour l'autre fichier que tu
> avais soumis, la procédure servant à la compilation devrait fonctionner sur cette feuille.
> Évidemment, cette feuille doit être dans le même class eur que le précédent. (copier-coller)
>
> '----------------------------------------------------------
> Sub Mise_En_Page_Feuille_Camille()
> Application.ScreenUpdating = False
> With ActiveSheet
> With .Range("G:I")
> .Replace " €", "", xlPart
> .Replace " ", "", xlPart
> .Replace "+", "", xlPart
> .Replace ",", ".", xlPart
> .NumberFormat = "# ### ##0.00 €"
> End With
> With .Range("J:J")
> .Replace " ", "", xlPart
> .Replace "+", "", xlPart
> .Replace "(", "", xlPart
> .Replace ")", "", xlPart
> .Replace ",", ".", xlPart
> End With
> With .Range("F:F")
> .Replace ",", ".", xlPart
> End With
> .Range("C:E").Delete
> .Range("B5") = "SRD"
> .Range("A:B").EntireColumn.AutoFit
> End With
> Application.ScreenUpdating = True
> End Sub
> '----------------------------------------------------------
>
> MichD
Bonjour MichD,
Je suis content que tu m'aies relancé car je n'ai plus osé t' en parler.
Le fichier que tu m'as envoyé avec la macro fonctionnait à me rveille; J'ai voulu d'abord lancer le début de macro pour ouvrir le cl asseur résultat et y déplacer les 3 feuilles. Puis appliquer le b out de macro en le rajoutant à la suite; en la lançant le ré sultat n'était pas celui attendu; une colonne a disâru et les sig nes ne sont pas disparus.Je me suis dit que j'allais appliquer le bout de m acro uniquement aux 2 autres feuilles séparément; cela ne marche pas. et je revenais en ce moment pour reprendre le fichier et la macro et b ien vérifier la structure de Camille par rapport aux 2 autres. Je vois ton message.
J'ai pris beaucoup de ton temps et en suis conscient. Moi-même qui suis en déplacement au Proche Orient pendant encore 3 semaines, j'att endais avec impatience l'ouverture des sessions de déclarations fiscal es le 12 avril pour commencer, puisque je fais certaines comptabilités . Et voilà que 10 jours sont passés, et je m'acharne à trouv er.
je vais essayer ton bout de macro. Sinon, je vais me déclarer inco mpétent et finir manuellement. Je ne m'en sers qu'une fois par mois et c'est par esprit de recherche que je voulais y arriver.
Merci encore. quelque soit le résultat, je reviens dire ce qui en est.
Bonjour,
je viens dire où j'en suis. Pas encore le miracle. Je me suis aper çu que la feuille que tu avais traitée après mon envoi, n'av ait pas la même structure que celles que j'avais pour les autres noms. J'avais supprimé 2 colonnes car avec les précédentes macros , les colonnes devaient être adjacentes.J'ai donc
-enregistré les fichier csv en xls
-appliqué cette macro (la tienne) à laquelle j'ai rajouté quelques lignes au début:
__________________________________________________________________
Sub Mise_En_Page_Feuille()
'
Windows("camille.xls").Activate
Sheets("camille").Select
Range("J4").Select
Selection.Cut
Range("H4").Select
ActiveSheet.Paste
Range("G:G,J:J").Select
Range("J1").Activate
Selection.Delete Shift:=xlToLeft
'
Application.ScreenUpdating = False
With ActiveSheet
With .Range("G:I")
.Replace " €", "", xlPart
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace ",", ".", xlPart
.NumberFormat = "# ### ##0.00 €"
End With
With .Range("J:J")
.Replace " ", "", xlPart
.Replace "+", "", xlPart
.Replace "(", "", xlPart
.Replace ")", "", xlPart
.Replace ",", ".", xlPart
End With
With .Range("F:F")
.Replace ",", ".", xlPart
End With
.Range("C:E").Delete
.Range("B5") = "SRD"
.Range("A:B").EntireColumn.AutoFit
End With
Application.ScreenUpdating = True
End Sub
_________________________________________________________________________ ______
Cela fonctionne individuellement car je voulais regrouper de suite les fe uilles sous un classeur "résultat" puis y modifier chacune mais cela n 'a pas marché.
je vais donc auparavant ouvrir les classeurs et les feuilles reçues avec ce bout de macro "Demarrage"
______________________________________
Sub demarrage()
' ouverture des fichiers
ChDir "D:Mes documentsBourse"
Workbooks.Open Filename:= _
"D:Mes documentsBourseresultat.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macrocamille.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroelie.xls"
ChDir "C:usersElichaDesktopessai macro"
Workbooks.Open Filename:= _
"C:usersElichaDesktopessai macroepoux.xls"
End Sub
___________________________________________________
ensuite modifier ces feuilles avec la macro du dessus (la tienne)
et enfin déplacer chaque feuille avec ceci
____________________________________
'Déplacer les 3 en dernier sur résultat.xls
Windows("elie.xls").Activate
Sheets("elie").Select
Sheets("elie").Move After:=Workbooks("Resultat.xls").Sheets(1)
Windows("camille.xls").Activate
Sheets("camille").Select
Sheets("camille").Move After:=Workbooks("Resultat.xls").Sheets(2)
Windows("epoux.xls").Activate
Sheets("epoux").Select
Sheets("epoux").Move After:=Workbooks("Resultat.xls").Sheets(3)
____________________________________________________
est-ce que cela te parait correct?
Bonne fin de dimanche