2016-08-19 12 views
0

カラムGのゼロの量を持つすべてのローを削除して、ある場所から別の場所にデータをエクスポートする現在のVBAマクロを拡張したいと思います。私の現在のスクリプトでこれを行うには?ここでゼロフィギュアのラインを削除するVBAマクロ

は今私のスクリプトです:

Sub ExportFees() 
' 
' ExportFees Macro 
' Mgt Fee Import 
' 

    Dim Filename As String 
    Filename = Worksheets("Tradar Import").Range("Y8") 
    Columns("A:W").Select 
    Selection.Copy 
    Workbooks.Add 
    Cells.Select 
    ActiveSheet.Paste 
    Application.CutCopyMode = False 
    ActiveWorkbook.SaveAs Filename:= _ 
     "\\BET-SYD-SVR01\Betashares\Ops\Tradar Import\FEE001\" & Filename, FileFormat _ 
     :=xlCSV, CreateBackup:=False 
    ActiveWorkbook.Save 
    ActiveWindow.Close 
End Sub 

Original Data Source

答えて

0

あなたはデータの範囲の参照を設定した場合、あなたが先にフィルタリングされたデータをコピーするために、データとRange.CopyをフィルタリングするRange.AutoFilterを使用することができます範囲。

Sub ExportFees() 
' 
' ExportFees Macro 
' Mgt Fee Import 
' 

    Dim Filename As String 

    Dim DataRange As Range 
    Set DataRange = Range("A1").CurrentRegion 
    DataRange.AutoFilter Field:=7, Criteria1:="<>0", Operator:=xlAnd 
    DataRange.AutoFilter 

    Filename = Worksheets("Tradar Import").Range("Y8") 
    Workbooks.Add 

    DataRange.Copy Destination:=Range("A1") 

    ActiveWorkbook.SaveAs Filename:= _ 
     "\\BET-SYD-SVR01\Betashares\Ops\Tradar Import\FEE001\" & Filename, FileFormat _ 
     :=xlCSV, CreateBackup:=False 
    ActiveWorkbook.Save 
    ActiveWindow.Close 
End Sub 
+0

ありがとうThomas。できます。 私はautofilterがフィルタ形式のままになっていることに気付きました。ファイルが作成されたら、オートフィルタを元に戻すマクロに追加するコードがありますか? – Mike

+0

私は自分の答えを更新しました。パラメータを指定しないで 'DataRange.AutoFilter'を使用するだけです。 –

関連する問題