2013-06-11 244 views
0

我有一個excel工作簿,當前有一個內置的宏,當按下宏的按鈕時,當前工作簿被保存到宏創建的目錄中,然後按順序擦除模板爲第二天的數據騰出空間。將整個工作表複製到另一個工作表

而是這個宏保存整個工作簿作爲一個新的文件,然後必須追查被觀看的,我想編輯宏做到以下幾點:

  1. 不要創建或保存一個新文件。
  2. 單擊「New Day」宏時,將標題爲「晨報」的模板工作表中的內容移至新工作表。
  3. 新選項卡的名稱應該是移動模板的日期,位於W1。

下面是代碼:

Sub NewDay() 

Dim fn, d, ln 
Set fs3 = CreateObject("Scripting.FileSystemObject") 
Set fs = CreateObject("Scripting.FileSystemObject") 
If fs3.FolderExists("c:\Morning Reports\") = True Then GoTo ext Else GoTo mkdir: 
mkdir: 
    Set d = fs.CreateFolder("c:\Morning Reports\") 
    With Application 
    .UserName = "MD Totco" 
    .StandardFont = "Arial" 
    .StandardFontSize = "10" 

    .DefaultFilePath = "c:\Morning Reports\" 
    .EnableSound = False 
    .RollZoom = False 
    End With 
ext: 
    Sheets("Morning Report").Select 
    ActiveSheet.Unprotect 

    ChDir "c:\Morning Reports\" 
    tempdate = ActiveSheet.Range("w1") + 1 
    ActiveSheet.Range("w1") = tempdate 
    tDate = Format(tempdate, "mmm d yyyy") 
    WellName = ActiveSheet.Range("s2") 

    fName = tDate + ", " + WellName 
    ActiveWorkbook.SaveAs FileName:=fName 

這將是創建新的文件並保存,代碼的其餘部分被擦拭和刷新模板子NewDay內的部分。但是,我不希望保存工作簿,我只是想將工作簿的「早晨報告」工作表複製到新工作表中。

+1

你可以發佈代碼作爲編輯的基礎嗎? –

回答

2

複製工作表很簡單:

Public Sub copy() 
Sheets(1).copy after:=Sheets(1) 
End Sub 

其餘的應該很容易爲你找出。

相關問題