標題:
請問如何將多個儲存格內的數字快速一起下標?
[打印本頁]
作者:
棋語鳥鳴
時間:
2011-9-5 18:18
標題:
請問如何將多個儲存格內的數字快速一起下標?
假設A1:F90儲存格中有英文與數字的組合
例:A
5
GR
95
J
6
L
8
W
9
,請問要如何讓多個儲存格內的數字(紅色部分)全部下標?
作者:
chin15
時間:
2011-9-6 08:41
假設A1:F90儲存格中有英文與數字的組合
例:A5GR95J6L8W9,請問要如何讓多個儲存格內的數字(紅色部分)全部下 ...
棋語鳥鳴 發表於 2011-9-5 18:18
Sub yy()
For Each c In [a1:f90]
For i = 1 To Len(c)
If Asc(Mid(c, i, 1)) < 64 Then
c.Characters(i, 1).Font.Subscript = True
End If
Next
Next
End Sub
複製代碼
作者:
棋語鳥鳴
時間:
2011-9-6 21:13
本帖最後由 棋語鳥鳴 於 2011-9-6 21:14 編輯
回復
2#
chin15
感謝您的回覆!解決了我不少的問題!
能問一下第四行中Asc還有<64是什麼意思嗎??
作者:
kimbal
時間:
2011-9-6 23:19
ASCII 表下65以前的字粒
http://www.asciitable.com/
64=@, 65=A, 66=B,.... 89=Y, 90=Z,...97=a (小寫),98=b,....
作者:
GBKEE
時間:
2011-9-7 09:14
尋找數字可用 If Mid(c, i, 1) Like "[0-9]" Then
替換 If Asc(Mid(c, i, 1)) < 64 Then
作者:
棋語鳥鳴
時間:
2011-9-7 19:37
回復
5#
GBKEE
回復
4#
kimbal
原來如此,2位大大讓多多增了知識了!但是小弟有1點想不透!為什麼我將此巨集改成下面方式(我想將範圍改在儲存格上)!卻不能使用,請問是哪裡錯誤了??
Sub yy()
Dim k As Range
Dim y As Range
Set k = [a1]
Set y = [b1]
For Each c In [k:y]
For i = 1 To Len(c)
If Asc(Mid(c, i, 1)) < 64 Then
c.Characters(i, 1).Font.Subscript = True
End If
Next
Next
End Sub
複製代碼
作者:
GBKEE
時間:
2011-9-7 19:51
本帖最後由 GBKEE 於 2011-9-7 19:54 編輯
回復
6#
棋語鳥鳴
For Each c In Range(k.Address, y.Address)
Set k = [a1]
Set y = [b1]
MsgBox [k:y].Address
MsgBox Range(k.Address, y.Address).Address
複製代碼
作者:
棋語鳥鳴
時間:
2011-9-8 20:04
本帖最後由 棋語鳥鳴 於 2011-9-8 20:06 編輯
回復
7#
GBKEE
我這樣測試的結果!只有A1跟B1這2個儲存格會下標而已!
我如果想讓他抓取A1與B1上的文字!來針對位置來做下標!請問要如何修改!
例如:我在A1打B10
B2打C21
他就會自動針對B10:C21範圍內做下標!
作者:
GBKEE
時間:
2011-9-8 20:28
回復
8#
棋語鳥鳴
所以話要說清楚,就不浪費時間
For Each c In Range(k.
Value
, y.
Value
)
作者:
棋語鳥鳴
時間:
2011-9-8 23:12
回復
9#
GBKEE
原來還有這一招喔!小弟才疏學淺~今天又從大師身上多學一招了!Thank you~
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)