返回列表 上一主題 發帖

[發問] 用迴圈判斷sheet名稱是否相同,並複製(已解決~感謝各位)

回復 1# iceandy6150


Private Sub CommandButton1_Click()
If TextBox1 <> "" Then
For i = 1 To Val(TextBox1)
   With Sheets.Add(after:=Sheets(Sheets.Count))
   .Name = CStr(Sheets.Count)
   End With
Next
End If
End Sub
學海無涯_不恥下問

TOP

回復 3# iceandy6150
  1. Private Sub CommandButton1_Click()
  2. Application.ScreenUpdating = False
  3. If TextBox1 <> "" Then
  4. For i = 1 To Val(TextBox1) - Sheets.Count
  5.    Sheets(1).Copy after:=Sheets(Sheets.Count)
  6.    ActiveSheet.Name = CStr(Sheets.Count)
  7. Next
  8. End If
  9. Application.ScreenUpdating = True
  10. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 10# hugh0620
取新增最大編號
  1. Private Sub CommandButton1_Click()
  2. Application.ScreenUpdating = False
  3. For Each sh In Sheets
  4.    If IsNumeric(sh.Name) Then s = CInt(sh.Name)
  5. Next
  6. k = Val(Sheets(1).TextBox1)
  7. If k > s Then
  8. For i = 1 To k - s
  9.   Sheets(1).Copy after:=Sheets(Sheets.Count)
  10.   ActiveSheet.Name = CStr(s + i)
  11. Next
  12. End If
  13. Application.ScreenUpdating = True
  14. End Sub
複製代碼
學海無涯_不恥下問

TOP

回復 15# iceandy6150
將銷售細目以資料庫型態儲存才是正道
若你一定要將每張銷售單做成一個工作表,在統計上會很麻煩
當然你的方法去找每張工作表然後找到品名與數量後去統計當然也行,不過這樣不是浪費很多空間與時間嗎?
至於你說的工作表名稱是數字時要如何指定
就是將數字轉成字串
例如
for i=1 to 5
sheets(cstr(i)).select
next
學海無涯_不恥下問

TOP

        靜思自在 : 為自己找藉口的人永遠不會進步。
返回列表 上一主題