[RESOLU] - [VBA] - Erreur à la fin de l'exécution de la macro

FlorianN

XLDnaute Junior
Bonjour le fofo,

J'ai un soucis de macro qui m'affiche le message suivant :
Microsoft Excel_2015-03-21_17-04-20.png
Comment faire pour que mon fichier s'enregistre tout seul au bon format sans le message d'erreur ?
"Au secours je me noie... ! Sois je suis nul ou alors faut aller chez l’ophtalmo."

Voici le code utilisé :
Code:
Sub Abonnés()
' Abonnés Macro

Application.DisplayAlerts = False

    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$O$100000"), , xlYes).Name _
        = "Tableau1"
    Range("Tableau1[#All]").Select
    ActiveSheet.ListObjects("Tableau1").TableStyle = "TableStyleMedium2"
    ActiveWindow.DisplayGridlines = False
    Columns("E:E").Select
    Selection.NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
    Columns("A:E").Select
    Columns("A:E").EntireColumn.AutoFit
    Columns("F:F").Select
    Selection.ColumnWidth = 45
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 5
    Columns("I:I").Select
    Columns("I:I").EntireColumn.AutoFit
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 5
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 3
    ActiveWindow.ScrollColumn = 2
    ActiveWindow.ScrollColumn = 1
    Range("Tableau1[[#Headers],[Civilité]]").Select
    ActiveWindow.DisplayHeadings = False
    
Application.DisplayAlerts = False

Dim NFic$
NFic = ThisWorkbook.Path & "\" & Format(DateAdd("m", -1, Date), "yyyy-mm"" - Abonnés.xlsx")
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=NFic, FileFormat:=xlOpenXMLWorkbook
Application.DisplayAlerts = True

Application.DisplayFullScreen = False
Application.DisplayAlerts = True

Application.ScreenUpdating = True
ThisWorkbook.Close savechanges = True

End Sub
Précision : je suis sous Windows XP avec Excel 2010 32 bits
 
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonsoir

la der,iere ligne il manque les :, c'est comme ceci

ThisWorkbook.Close savechanges:=True
 

FlorianN

XLDnaute Junior
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Salut !

Je veux bien mettre les deux points mais j'ai toujours le même message. :confused:

En fait, je me base depuis un fichier CSV que je souhaite mettre en forme (cela nous l'aurons compris) puis enregistrer au format *.xlsx.
Donc pourquoi ce fichu code ne veux pas fonctionner ?

Ci-joint un fichier exemple.
 

Fichiers joints

camarchepas

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bon ,

si c'est juste pour importer un csv ,

fais comme ceci , et tu auras un joli csv :

Bien sur il faut définir fichier et son chemin d'accès .

Le reste de ton code parait une usine à gaz, mais bon c'est ton droit certain bosse à EDF d'autre à GDF ....


Workbooks.OpenText Fichier, Origin:=xlWindows, Local:=True
 

camarchepas

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

En prime la sauvegarde en xlsx ,

Sub ff()
Workbooks.OpenText "C:\Bar\adherent2015303.csv", Origin:=xlWindows, Local:=True
ActiveWorkbook.SaveAs "c:\bar\adhé.xlsx"
End Sub

Par contre si ensuite tu veux t'amuser avec les tableaux Excel , je ne suis pas le bon interlocuteur.

Perso, je trouve que ça complique tout les traitements , mais c'est purement un avis perso avec mes connaissances actuelles.

Comme l'on évolue en permanence , peut être qu'un jour je changerais d'avis .
 

FlorianN

XLDnaute Junior
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Je crois que nous nous sommes pas compris.

En fait, j'importe un fichier CSV dont le titre change à chaque fois (AAAAMMJJhhmmss_adherent-AAAA-MM.csv).
La but de la macro est de mettre en forme selon mes besoins. Cela semble clair pour tout le monde.

Or je souhaite que le fichier s'enregistre sous un autre nom et un autre format (en l’occurrence abonnés.xlsx) une fois que la macro se termine.
Excel le fait mais dans le dossier : C:\Documents and Settings\Utilisateur\Application Data\Microsoft\Excel\XLSTART
avec en plus le message cité dans le premier post.

Comment dire à Excel d'enregistrer le travail dans le dossier : C:\Documents and Settings\Utilisateur\Bureau\Téléchargements FireFox ?
 

JCGL

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonjour à tous,
Salut Nono,

Peux-tu essayer :
NFic = "C:\Documents and Settings\Utilisateur\Bureau\Téléchargements FireFox\" & Format(DateAdd("m", -1, Date), "yyyy-mm"" - Abonnés.xlsx")
et comme déjà suggéré :
ThisWorkbook.Close savechanges:= True
A+ à tous
 
Dernière édition:

camarchepas

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonsoir ,

Je te laisse à tes plaisirs, effectivement , je ne peux comprendre que ce qu'on m'explique .

Et j'ai l'impression que tu veux du tout cuit dans le bec , sans t'investir un minimum .

Donc je passe mon chemin et te souhaite bon courage , l'Extraterrestre ....

@ Bonsoir JcGl , bon courage les extra-terrestres attaquent , lol
 

FlorianN

XLDnaute Junior
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonsoir à tous les deux,

Navré que tu l'ai mal pris NONO. Ce n'était pas le but.
Du tout cuit non mais savoir où je fais des erreurs oui.
Il y a eu un mal entendu entre nous deux. J'espère que l'on pourra à nouveau avoir des échanges ensemble.

JCGL
Merci de ton truc pour le chemin d'enregistrement.
Le message est toujours là mais cela n'est pas très grave en soit.
Un grand merci.


Bonne soirée à vous deux.
 

JCGL

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonjour à tous,

Basé sur ton code d'origine :

VB:
Option Explicit


Sub Abonnés()
Dim NFic$
NFic = "C:\Documents and Settings\Utilisateur\Bureau\Téléchargements FireFox\" & Format(DateAdd("m", -1, Date), "yyyy-mm"" - Abonnés.xlsx")


    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$O$100000"), , xlYes).Name = "Tableau1"
    ActiveSheet.ListObjects("Tableau1").TableStyle = "TableStyleMedium2"
    ActiveWindow.DisplayGridlines = False
    Columns("E:E").NumberFormat = "0#"" ""##"" ""##"" ""##"" ""##"
    Columns("A:E").EntireColumn.AutoFit
    Columns("F:F").ColumnWidth = 45
    Columns("I:I").EntireColumn.AutoFit
    Range("Tableau1[[#Headers],[Civilité]]").Select
    ActiveWindow.DisplayHeadings = False


Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=NFic, FileFormat:=xlOpenXMLWorkbook
Application.DisplayAlerts = True


Application.ScreenUpdating = True
ThisWorkbook.Close SaveChanges:=True
End Sub
A+ à tous
 

FlorianN

XLDnaute Junior
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Salut JCGL,

Hier tout fonctionnait bien mais aujourd'hui j'ai un nouveau message :
Microsoft Excel - 20150322135549_adherent-2015-03_2015-03-22_15-04-10.png
A priori ça "bug" sur la ligne : ActiveWorkbook.SaveAs Filename:=NFic, FileFormat:=xlOpenXMLWorkbook

Je suis en train de m'arracher les cheveux...

Config PC : Windows XP 32 bits Excel 2010
 
Dernière édition:

JCGL

XLDnaute Barbatruc
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Bonjour à tous,

Difficile de tenter de t'aider...
A quoi correspond ton chemin dans la capture ?

Je dirais qu'il manque le \ qui va bien pour nommer un sous répertoire...
Si tu crées un sous répertoire il faut adapter le code.

Code:
NFic = "C:\Documents and Settings\Utilisateur\Bureau\Téléchargements FireFox\39791500\" & Format(DateAdd("m", -1, Date), "yyyy-mm"" - Abonnés.xlsx")
A+ à tous
 
Dernière édition:

FlorianN

XLDnaute Junior
Re : [VBA] - Erreur à la fin de l'exécution de la macro

Ooppsss... :eek:
Effectivement ça fonctionne mieux avec le bon chemin... :eek:

Trop la honte


Je vais mettre le fil en résolu
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas