2017-10-19 5 views
0

Je suis nouveau à VBA et bloqué sur un problème. J'essaie de copier une table dans un fichier .csv et je veux que le résultat final contienne le nom d'origine .xlsm & le nom de la table et la date/heure. J'ai réussi à assembler le code pour exporter la table en .csv avec le nom de la table et la date/heure, mais j'ai du mal à obtenir le fichier mane. Je reçois l'erreur suivante "Méthode 'SaveAs' de object'_Workbook 'échoué" Ci-dessous ce que j'ai, toute aide serait géniale!Essayer de copier une table dans un fichier CSV et nommez-la en utilisant le nom de fichier d'origine

Sub ExportTableBanquetEarnings() 
Application.ScreenUpdating = False 

Sheets("BanquetEarnings").Visible = True 
Sheets("BanquetEarnings").Select 

Dim wb As Workbook, wbNew As Workbook 
Dim ws As Worksheet, wsNew As Worksheet 
Dim wbNewName As String 
Dim wbCurrent As String 

wbCurrent = ThisWorkbook.FullName 

Set wb = ThisWorkbook 
Set ws = ActiveSheet 

Set wbNew = Workbooks.Add 


With wbNew 
    Set wsNew = wbNew.Sheets("Sheet1") 
    wbNewName = ws.ListObjects(1).Name 
    ws.ListObjects(1).Range.Copy 
    wsNew.Range("A1").PasteSpecial Paste:=xlPasteAll 
    .SaveAs Filename:="F:\admin\Report Databases\BanquetTipouts" & "\" & 
    wbCurrent & wbNewName & Format(Now, "yyyymmdd_hhmm") & ".csv", _ 
     FileFormat:=xlCSVMSDOS, CreateBackup:=False 
End With 

Application.DisplayAlerts = False 
ActiveWorkbook.Close 
Application.DisplayAlerts = True 

ActiveWorkbook.RefreshAll 

Sheets("BanquetEarnings").Visible = False 
Sheets("Blank Cost Sheet").Select 
Workbooks.Open "F:\Function Agreements\Cost Sheets M\Payroll Report - 
    V2.xlsm" 

End Sub 
+0

Je suis aux prises avec l'instruction wbCurrent. –

Répondre

0

Le code ci-dessous indique le chemin de ce classeur

wbCurrent = ThisWorkbook.FullName 

Je pense que vous vouliez dire à utiliser est ...

wbCurrent = ThisWorkbook.Name 

, je pense aussi une autre question pourrait être la méthode Now, elle devrait être Now()

+0

Oui, cela a fonctionné! Merci Maldred !!! –

+0

Aucun problème, si cela a été en mesure de répondre à votre question s'il vous plaît marquer comme réponse, donc quelqu'un d'autre qui cherche la solution similaire à leur problème peut facilement le trouver – Maldred