返回列表 上一主題 發帖

修改活頁簿名稱

修改活頁簿名稱

檔案中有針對修改活頁簿名稱去管理,但是無法管理工作表頁面中,使已經存在工作表名稱不要修改,是否有程式撰寫上得錯誤。
  1. Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  2. 'Updateby MMC&LBC 107.09.11
  3. Dim i As Integer
  4. Dim Name, code, t As String
  5. Dim xR, fd, PW As Range
  6. Dim wSheet As Worksheet

  7.    code = ":/\?*[]"
  8.    Set xR = Cells(Rows.Count, "C").End(xlUp)(2)
  9.      
  10.      If xR.Row > 1 Then
  11.      While xR = ""
  12.      xR = ActiveSheet.Name                 '在工作表單維護中
  13.      Wend
  14.    
  15.      With Sheets("工作表單維護")
  16.      Set fd = .Columns(3).Cells.Find(ActiveSheet.Name, LookIn:=xlValues, lookat:=xlWhole) '在C欄搜尋工作表名稱之內容看看使否已經存在該筆資料
  17.      
  18.         If fd Is Nothing Then
  19.            MsgBox "工作表單維護中無工作表: " & xR & " ,需更改工作表名稱!", , "更改工作表名稱!"
  20.            For Each wSheet In Worksheets
  21.            With Sheets("工作表單維護")
  22.            Set fd = .Columns(3).Cells.Find(Name, LookIn:=xlValues, lookat:=xlWhole) '在C欄搜尋工作表名稱之內容看看使否已經存在該筆資料
  23.            If wSheet.Name = xR Then
  24. 10            Name = InputBox("請輸入工作表名稱!" & vbNewLine & "原名稱:" & wSheet.Name, "更改工作表名稱", , 8000, 4000) '提示
  25.                  i = 1: t = Mid(Name, i, 1)
  26.                  If Len(Name) > 31 Then
  27.                     MsgBox "工作表名稱大於31個字元!": GoTo 10
  28.                  ElseIf Len(Name) = 0 Then
  29.                     MsgBox "工作表名稱空白!": GoTo 10
  30.                  ElseIf InStr(1, code, t) > 0 Then: i = i + 1
  31.                     MsgBox "工作表名稱有特殊字元!": GoTo 10
  32.                  ElseIf Not fd Is Nothing Then
  33.                     MsgBox "工作表名稱重複!": GoTo 10
  34.                  Else
  35.                     ActiveSheet.Name = Name
  36.                  End If
  37.            End If
  38.            End With
  39.            Next wSheet
  40.         End If
  41.      End With
  42.      End If
  43.    
  44. End Sub
複製代碼

修改活頁簿名稱.zip (29.57 KB)

修改活頁簿名稱

看不懂邏輯及流程~~
最好逐步描述~~~

TOP

        靜思自在 : 【為善競爭】人生要為善競爭,分秒必爭。
返回列表 上一主題