2017-06-15 16 views
0

マクロを埋め込んでトラッキング番号を.csvファイルに保存し、ワークブックを閉じるときにワークシート(1)を有効にします。私が抱えている問題は、ワークシート上のワークブック(「トラッキング」)を保存して閉じることです。ワークシート(1)を選択またはアクティブ化してから再保存して閉じようとしましたが、動作させることができません。VBA:CSV保存後に特定のワークシートを選択して閉じる

ここに、.csvファイルを保存してブックを閉じるコードを示します。

Dim ws as Worksheet 
Set ws = ActiveWorkbook.Worksheets("Tracking")  
ws.Select 

Dim sFileName As String 
sFileName = ActiveWorkbook.path & "\" & Left(ws.name, InStr(1, ActiveWorkbook.name, ".") - 1) & ".csv" 

Application.DisplayAlerts = False 

'Save Current workbook just in case latest additions not saved. 
ActiveWorkbook.Save 

'Now create a CSV of the active sheet. 
ws.SaveAs Filename:=sFileName, FileFormat:=xlCSV, CreateBackup:=False 

Application.DisplayAlerts = True 'turn it back on 
ActiveWorkbook.Close True 'Close and quit excel 
Application.Quit 

答えて

1

あなたがしようとしているのは、特定のシートでExcelを開いている場合は、組み込みのworkbook_openを試すことができます。

Private Sub Workbook_Open() 
    Sheets(“Sheet1”).Select 
End Sub 

シートと範囲を選択するための変更。

Sub Macro1() 
Dim ws As Worksheet 
Set ws = ActiveWorkbook.Worksheets("Sheet2") 
ws.Select 

Dim sFileName As String 
sFileName = ActiveWorkbook.Path & "\" & Left(ws.Name, InStr(1, ActiveWorkbook.Name, ".") - 1) & ".csv" 

Application.DisplayAlerts = False 

'Save Current workbook just in case latest additions not saved. 
Sheets(1).Select 
Range("A1").Select 
ActiveWorkbook.Save 

'Now create a CSV of the active sheet. 
ws.SaveAs Filename:=sFileName, FileFormat:=xlCSV, CreateBackup:=False 

Application.DisplayAlerts = True 'turn it back on 
ActiveWorkbook.Close True 'Close and quit excel 
Application.Quit 
End Sub 
+0

残念ながら、WorkSheets(1)が終了後にインポートのために使用されるため、残念ながらワークブックを再度開くことを回避しようとしています。 –

+0

@AndrewP。私はもう質問を理解しているかどうか分からない。問題は、ワークブックを再び開くときにワークシート(1)をアクティブにしたいとしているが、ワークブックを再度開いたくないというコメントが表示されます。あなたのコードからは、CSVファイルにExcelシートを保存してExcelを閉じるように見えます。ワークシート(1)でワークブックを開くことはできませんか?あなたがしようとしていることを明確にすることはできますか? – Mircea

+0

申し訳ありません私は混乱を引き起こした再オープンを使用しました。 Excelシートは、閉じた後にインポートとして使用されます。問題はワークシート(「トラッキング」)を閉じるため、ワークシート(「トラッキング」)がアクティブなので、ワークシート(1)を選択してもう一度保存する必要があります。私はそれを適切なワークシートに近づけたいと思います。 @AndrewP。 –

関連する問題