2013-06-28 24 views
0

我是這個論壇的新手,剛開始學習編程。我有一個問題,希望對其他人也有用。我將數據保存在兩列和30行中,並以底部各列的總和結尾。在excel中創建按鈕以清除數據字段並在文檔的其他地方保存前一行

我想要做的是創建一個VB程序,保存總和,將該值移動到一個新的行,然後清除所有以前的數據,以便它可以重新輸入並再次保存在一個新的位置。

該程序將用於追蹤每月從儲罐中蒸汽的排放情況,並且每個月都會輸入數據我希望能夠保存特定的月份,然後清除並準備將數據輸入到下個月。感謝您提供任何幫助或想法。

這是代碼我想出迄今,

Sub Macro4() 
    Range("F15").Select 
    ActiveWindow.SmallScroll Down:=15 
    Range("C30:D30").Select 
    Selection.Copy 
    Range("C33").Select 
    ActiveSheet.Paste 
    Application.CutCopyMode = False 
    Range("C33").Select 
End Sub 

Sub Button2_Click() 
    ActiveWindow.SmallScroll Down:=18 
    Range("C30:D30").Select 
    Selection.Copy 
    Range("C33").Select 
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ 
     :=False, Transpose:=False 
    Range("C28:D29").Select 
    Range("D29").Activate 
    Application.CutCopyMode = False 
    Range("C2:D29").Select 
    Range("D29").Activate 
    Selection.ClearContents 
End Sub 
+0

你嘗試過什麼?任何代碼分享(即使它不工作)?如果你能夠明確什麼能夠阻止你實現目標,那麼幫助總是更容易。如果您不知道從哪裏開始,請嘗試在執行您描述的步驟時錄製一個宏 - 在生成的代碼處獲取al ook,看看您是否可以修改它。如果遇到問題,請在此處提出建議。 –

+0

謝謝你的回覆蒂姆,我用了錄製宏,並用此來了,子S() ' 的宏觀 ' ' 快捷鍵:Ctrl + S ' 範圍( 「E31:F31」)。選擇 Selection.Copy ActiveWindow.SmallScroll下:= 114 範圍( 「C138」)選擇 ActiveSheet.Paste Application.CutCopyMode =假 隨着Selection.Interior .Pattern = xlSolid.PatternColorIndex = xlAutomatic 。顏色=。 5296274 .TintAndShade = 0 .PatternTintAndShade = 0 以結束ActiveWindow.SmallScroll向下:。= - 6 Selection.Font.Bold =假 範圍( 「E3:F30」)選擇 Selection.ClearContents 範圍( 「E3」)選擇 ActiveCell.FormulaR1C1 = 「」 範圍(「E1」)。選擇 End Sub – MechEng12

+0

對不起,這兩個回覆在帖子中沒有足夠的字符,但我使用了該代碼,但我無法弄清楚如何將它與某個按鈕相關聯,然後移動到連續的行而不是反覆將新數據輸入到同一行。謝謝您的幫助。 – MechEng12

回答

0

像這樣的東西應該工作(調整範圍,以適應)

Sub Button2_Click() 
    Dim rngDest as Range 

    With ActiveSheet 
     'find next empty row 
     Set rngDest= .cells(rows.count,3).end(xlup).offset(1,0) 

     'copy values 
     rngDest.resize(1,2).value= .Range("C30:D30").Value  

     'clear input range 
     .Range("C28:D29").ClearContents 
    End With 
End Sub 
+0

謝謝蒂姆,非常樂於助人! – MechEng12

+0

沒問題 - 注意我剛剛編輯了我的代碼:'offset(1,1)'應該是'offset(1,0)' –

相關問題