2017-06-21 69 views
0

我需要執行一項自動化任務,將linux中的表複製到excel中,然後填充圖形進行跟蹤。該任務幾乎完全自動化,但我仍然需要在Excel中執行一些手動作業。在同一工作表中查找不同範圍的lastrow

假設在概要(1)工作表中,我有10種不同的模式和概括(2)有10種不同模式的工作表。每週,每種模式的數據將自動從col F:K更新。我已經使用VBA自動完成了該部分。然而,我需要手動編寫用於柱A:每個模式中的d其中:

  • 柱A:O表示佔用和E表示空
  • 列B:星期的數
  • COL C:日期與特定的格式,不是通常的
  • COL d:數據庫名稱

即由10種模式的內容表是從A1:S51(模式1),A52:S:101(模式2),依此類推,直到最後大多數A452:S501(模式10),其中所有模式的範圍是50個單元格。

我已經提示用戶輸入並存儲在變量中,但是如何將值粘貼到每個模式的下一行。例如,我已經從W1更新到W4,當用戶提示輸入WW5時,這些值將在每種模式的lastrow之後存儲在下一行中。

這是關於模式1和模式2的外觀示例。其餘模式可能會在模式2之後執行。

SUMMARY(1)

這是我當前的代碼在當用戶輸入值,它會粘貼到每個模式的第一行:

Private Sub CommandButton1_Click() 

Dim d As Variant 
Dim w As Variant 
Dim daymonth As Variant 
Dim data As Variant 
Dim i As Integer 

d = InputBox("Enter the D:") 
w = InputBox("Enter the Week:") 
daymonth = InputBox("Enter the date:") 
data = InputBox("Enter the database name:") 
For i = 2 To 501 Step 50 
    Cells(i, 1).Value = d 
    Cells(i, 2).Value = w 
    Cells(i, 3).Value = daymonth 
    Cells(i, 4).Value = data 

Next i 

End Sub 

回答

0

這是可以做的伎倆代碼。在運行代碼之前,如果有任何少於2行數據的模式,此代碼將不正確工作。在這種情況下,您需要根據您想要如何處理它進行修改。

wk_no = InputBox("Enter Week") 

For i = 1 To 2 ' Iterating through sheets 
    For j = 2 To 452 Step 50 'Iterating through the rows 
     Sheets(i).Range("B" & Trim(Str(j))).End(xlDown).Offset(1, 0).Value = wk_no 
    Next j 
Next i 
+0

嗨,我試過你的腳本,但是當我進入後,什麼也沒有出現在桌子上。我試圖在具有2種模式的例子中,這是代碼: Explicit選項 小組測試() 昏暗wk_no作爲字符串 昏暗我作爲整數 昏暗J所示整數 wk_no =的InputBox(「輸入周」) 對於i = 1到2'遍歷表 對於j = 2到102步驟50'遍歷行 Sheets(i).Range(「B」&Trim(Str(j)))。End(xlDown ).Offset(1,0).Value = wk_no Next j Next i End Sub – mmaz

相關問題