返回列表 上一主題 發帖

依當下執行時間,如何自動將指定工作表名稱修改成此格式"1018-上午"???

GBKEE版主,這二天執行發現有點問題,按此巨集執行,雖然可產生日期+上下午(序號)工作表,但該工作表中無任何資料,而且每日新訂單工作表仍在,小弟原以為是自己將程式碼加入關係造成,但後單獨只以版主提供的程式碼執行時,仍是此情況,請GBKEE版主再協助確認,謝謝
首次執行巨集:
新訂單工作表--->日期+上(下)午工作表(工作表名稱變更,非新增工作表)
當天再次執行巨集(當天可能會再捉一次新訂單工作表):
新訂單工作表--->日期+上(下)午(序號)工作表(工作表名稱變更,非新增工作表)

TOP

回復 11# p6703
現在我已弄不清楚了,你執行一次後要的是什麼?
你說: 新訂單工作表--->日期+上(下)午工作表(工作表名稱變更,非新增工作表)
Q:活頁簿中:  日期+上(下)午工作表 是每天的日期都有一張嗎?
還是活頁簿中不管是日期為何,都只有 (當日日期) 一張 日期+上(下)午工作表 ?

TOP

GBKEE版主,容小弟再解釋
一般一天會上下午各去捉取一次新訂單
上午捉取的新訂單工作表(此我是又另外用巨集去捉取的),執行巨集後,變成1023-上午(此時原新訂單工作表已變更此名稱)
但有時上午會捉取不止一次,當第二次捉取新訂單工作表時,執行巨集時,應變成了1023-上午(1),以此類推.....

TOP

回復 13# p6703
是這樣嗎?                  
7# 程式碼
  1. If Msg = False Then   '沒比對到
  2.              MsgBox "找不到 " & xlName        
  3.            '註解 Sheets.Add(, Sheets(Sheets.Count)).Name = xlName
  4.        Else
複製代碼

TOP

GBKEE 版主,小弟按原4#提供的程式巨集稍做修改,可符小弟的需求,在次再次感謝GBKEE 版主,謝謝....(原巨集應是新增工作表,但小弟需求的是將原工作表變更名稱,以便之後再新增"每日新訂單"工作表時不致錯誤)
  1. Option Explicit
  2. Sub 已核對的訂單可轉成日期名稱()
  3.     Dim xlName As String, Sh As Worksheet, i As Integer
  4.     xlName = Format(Now(), "mmdd") & "-" & Mid(Format(Time(), "C"), 1, 2)
  5.     On Error GoTo R:
  6.     Sheets("每日新訂單").Select
  7.     ActiveSheet.Name = xlName
  8. R:
  9.     If Err.Number <> 0 Then
  10.         For Each Sh In Sheets
  11.             If InStr(Sh.Name, xlName) Then i = i + 1
  12.         Next
  13.         xlName = xlName & "(" & i & ")"
  14.         Err.Clear
  15.         Resume
  16.     End If
  17. End Sub
複製代碼

TOP

        靜思自在 : 一個缺口的杯子,如果換一個角度看它,它仍然是圓的。
返回列表 上一主題