有沒有任何辦法鎖死整個活頁薄字體 (新細明體 + Arial)
- 帖子
- 37
- 主題
- 10
- 精華
- 0
- 積分
- 63
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- 2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-8-25
- 最後登錄
- 2016-5-24
|
有沒有任何辦法鎖死整個活頁薄字體 (新細明體 + Arial)
有沒有任何辦法鎖死整個活頁薄字體 (新細明體 + Arial) ?
因每次用任何方法貼上都改用了 (細明體 + Times New Roman) |
|
|
|
|
|
|
- 帖子
- 37
- 主題
- 10
- 精華
- 0
- 積分
- 63
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- 2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-8-25
- 最後登錄
- 2016-5-24
|
3#
發表於 2013-9-8 15:16
| 只看該作者
回復 2# GBKEE
這個我知道, 如果用 新細明體 英文字也跟隨 新細明體
但是我就偏偏改用 標準字型為 Arial (為什麼我要這樣呢? 因為我要將 英文及數字做 Arial )
因為我 貼上的資料 是包含 中文字及數字 (如下資料) , 可惜的是 中文字 變了 細明體..............
細明體 有不好處的地方 就是將字體擴闊 , 還有如果 再覆蓋貼上 也會變了全部都是 細明體(中英數)
(如下資料)
更新:28/08/2012 14:42 <~~~~~~~~~ 要鎖死為 中文為 新細明體 英數為 Arial
最後:28/08/2012 14:49
而我知道 C:\WINDOWS\Fonts ( 細明體 & 新細明體 MINGLIU.TTC ) 電腦設定為 細明體 是 ~~~> "首選先" |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
4#
發表於 2013-9-8 16:02
| 只看該作者
回復 3# jakcy1234
試試看- Option Explicit
- Sub Ex()
- Dim C As Range, i As Integer
- For Each C In ActiveSheet.UsedRange
- For i = 1 To Len(C)
- If Asc(Mid(C, i, 1)) >= 0 And Asc(Mid(C, i, 1)) <= 255 Then
- C.Characters(Start:=i, Length:=i).Font.Name = "Arial"
- Else
- C.Characters(Start:=i, Length:=i).Font.Name = "新細明體"
- End If
- Next
- Next
- End Sub
複製代碼 |
|
|
|
|
|
|
- 帖子
- 37
- 主題
- 10
- 精華
- 0
- 積分
- 63
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- 2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-8-25
- 最後登錄
- 2016-5-24
|
5#
發表於 2013-9-8 19:05
| 只看該作者
回復 4# GBKEE - Private Sub Worksheet_Change(ByVal Target As Range)
- Dim rCell As Range
- Application.EnableEvents = False
- For Each rCell In Target
- If Len(rCell.Text) > 1 Or _
- Val(rCell.Value) > 1 Then
- rCell.Font.Name = "Arial"
- Else
- rCell.Font.Name = "Arial"
- End If
- Next
- Application.EnableEvents = True
- End Sub
複製代碼 謝謝你回答~~
我找了以上方法, 將excel option 設定回 新細明體 再用以上語句 Private Sub Worksheet_Change,
基本上跟平常 貼上沒分別(以萬個cell), 還發現 比較 我手動改字體的時間還快, 可能是 "覆蓋貼上的時間" 快過 "手動改自體的時間" |
|
|
|
|
|
|
- 帖子
- 37
- 主題
- 10
- 精華
- 0
- 積分
- 63
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- 2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-8-25
- 最後登錄
- 2016-5-24
|
6#
發表於 2013-9-8 19:26
| 只看該作者
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
7#
發表於 2013-9-8 20:33
| 只看該作者
回復 5# jakcy1234 - If Len(rCell.Text) > 1 Or Val(rCell.Value) > 1 Then
- rCell.Font.Name = "Arial"
- Else
- rCell.Font.Name = "Arial"
- End If
複製代碼 這程式碼不管有無 IF 判斷式,都是執行 rCell.Font.Name = "Arial" |
|
|
|
|
|
|
- 帖子
- 37
- 主題
- 10
- 精華
- 0
- 積分
- 63
- 點名
- 0
- 作業系統
- XP
- 軟體版本
- 2010
- 閱讀權限
- 20
- 性別
- 男
- 註冊時間
- 2013-8-25
- 最後登錄
- 2016-5-24
|
8#
發表於 2013-9-8 21:42
| 只看該作者
回復 7# GBKEE
但是我刪減了語句後就沒有轉了 Arial |
|
|
|
|
|
|
- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
9#
發表於 2013-9-9 07:52
| 只看該作者
回復 8# jakcy1234
這不與你5#的程式碼一樣?- Option Explicit
- Private Sub Worksheet_Change(ByVal Target As Range)
- Dim rCell As Range
- Application.EnableEvents = False
- For Each rCell In Target
- rCell.Font.Name = "Arial" ' 一樣的 字型
- '********************************************************
- 'If Len(rCell.Text) > 1 Or Val(rCell.Value) > 1 Then '*
- ' rCell.Font.Name = "Arial" ' 一樣的 字型 '*
- 'Else '*
- ' rCell.Font.Name = "Arial" ' 一樣的 字型 '*
- 'End If '*
- '********************************************************
- Next
- Application.EnableEvents = True
- End Sub
複製代碼 |
|
|
|
|
|
|