MaverickRay 發表於 18-9-1 15:38

請教VBA裡以下這段程式碼在單步除錯都沒問題,但指定後...

以下為程式碼:========================
Sub 上市投信買賣超一日()
' 上市投信買賣超一日
'選取工作簿裡的" (市)投信買賣一日" 工作頁
    Sheets("(市)投信買賣一日").Select
    Range("B3").Select
    ActiveWorkbook.Connections("上市投信買賣超一日更新連線").Refresh


    '凍結 D6 窗格
    Range("D6").Select
    ActiveWindow.FreezePanes = True
   
   '設定標題列=>B5~K5===========================
    Range("B5:K5").Select
    With Selection.Interior '選擇.內部(底色)
      .Color = 1          '底色設為黑色
    End With
    With Selection.Font
      .Name = "華康刷刷體W7"
      .FontStyle = "標準"
      .Size = 20
    End With
    '===========================================
   
    '設定 B4 買超格為紅色底色===================
    Range("B4").Select
    With Selection.Interior '選擇.內部(底色)
      .Color = 233      '233=紅色
    End With
    '設定 B4 買超格其字體為20大、華康刷刷體W7
    With Selection.Font
      .Name = "華康刷刷體W7"'設定字體
      .Size = 20            '設定大小
      .Color = 1            '設定字體顏色為黑色=>1
    End With
    '============================================
   
    '設定 G4 賣超格綠色底色、20字大==============
    Range("G4").Select
    With Selection.Interior '選擇.內部(底色)
      .Color = 7798533    'G4賣超儲存格底色=綠色
    End With
    '設定 G4 賣超格其字體為20大、華康刷刷體W7
    With Selection.Font
      .Name = "華康刷刷體W7"'設定字體
      .Size = 20            '設定大小
      .Color = 1      '設定字體顏色
    End With
    '============================================
   
    '設定日期格字體與大小========================
    Range("B3").Select
    With Selection.Font
      .Name = "新細明體"
      .Size = 16
    End With
    '============================================


'將日期格B3,擴大至佔兩個儲存格,以便全頁欄位最適化時,不會受到日期字寬而使買超欄位全部變寬
    Range("B3:C3").Select
    Selection.Merge'使B3與C3合併
    With Selection
      .HorizontalAlignment = xlLeft'合併內水平對齊=靠左
      .VerticalAlignment = xlCenter'合併內垂直對齊=靠中
      .MergeCells = True
    End With
   
'將該頁儲存格欄寬最適化======================
    Cells.Select                      '選擇所有儲存格
    Cells.EntireColumn.AutoFit      '儲存格整列.自動調整 (欄寬最適化)
End Sub


================================================
以上為個人利用錄製巨集與外部匯入參照,加刪掉一些不必要的設定值後拿來做自動更新的程式碼,但很奇怪的是,在最後兩段紅色字體裡,我將B3與C3儲存格合併後,再試著讓試算表自動幫我表格欄位最佳化時、、、
當我以debug模式一一動作時,這兩段的內容都有照實的作業,也就是程式執行到結束,其B3、C3是有被合併在一塊,且欄位有被最適化。

不過當我將此巨集指定到一快速鍵後,再按下此鍵時,欄位在最適化後又會自動縮在一塊,變成如附圖所示、字體全縮在一塊,而且,在我點選C3格時,它並沒有跟B3合併在一塊????

這真的好奇怪,單步除錯時無誤,快速按鍵卻不行,希望有高手指點迷津,在此先謝謝了..


頁: [1]
查看完整版本: 請教VBA裡以下這段程式碼在單步除錯都沒問題,但指定後...