註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excel程式區
» 關於Range("A1").Formula等於空值會出現FALSE的問題(已解決)
返回列表
下一主題
上一主題
發帖
[發問]
關於Range("A1").Formula等於空值會出現FALSE的問題(已解決)
vpower
發短消息
加為好友
vpower
當前離線
UID
383
帖子
155
主題
56
精華
0
積分
242
金錢
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
在線時間
64 小時
註冊時間
2010-5-29
最後登錄
2011-7-18
禁止發言
帖子
155
主題
56
精華
0
積分
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
註冊時間
2010-5-29
最後登錄
2011-7-18
1
#
跳轉到
»
倒序看帖
打印
字體大小:
t
T
發表於 2011-5-24 10:48
|
只看該作者
[發問]
關於Range("A1").Formula等於空值會出現FALSE的問題(已解決)
本帖最後由 vpower 於 2011-5-25 08:39 編輯
Range("A1").
For
mula="=IF(B1="","",NOW())"
執行後A1會變成=IF(B1=",",NOW())
造成判斷錯誤,出現FALSE.
收藏
分享
GBKEE
發短消息
加為好友
GBKEE
當前離線
UID
16
帖子
5923
主題
13
精華
1
積分
5986
金錢
5986
點名
0
作業系統
win10
軟體版本
Office 2010
閱讀權限
150
性別
男
來自
台灣基隆
在線時間
4811 小時
註冊時間
2010-5-1
最後登錄
2022-1-23
超級版主
帖子
5923
主題
13
精華
1
積分
5986
點名
0
作業系統
win10
軟體版本
Office 2010
閱讀權限
150
性別
男
來自
台灣基隆
註冊時間
2010-5-1
最後登錄
2022-1-23
2
#
發表於 2011-5-24 12:05
|
只看該作者
回復
1#
vpower
可巨集錄製 在A1 輸入公式 再看看程式碼
Range("A1").Formula = "=IF(B1=
"""" ,""""
,NOW())"
TOP
vpower
發短消息
加為好友
vpower
當前離線
UID
383
帖子
155
主題
56
精華
0
積分
242
金錢
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
在線時間
64 小時
註冊時間
2010-5-29
最後登錄
2011-7-18
禁止發言
帖子
155
主題
56
精華
0
積分
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
註冊時間
2010-5-29
最後登錄
2011-7-18
3
#
發表於 2011-5-24 16:57
|
只看該作者
回復
2#
GBKEE
我實際錄製的巨集如下
Range("G2").FormulaR1C1 = "=IF(D2="""","""",D2+TIME(0,5,0))"
執行後,儲存格G2會變成=IF('D2'="","",'D2'+TIME(0,5,0))
D2的前後會多出一個'
儲存格狀態會顯示#NAME?
TOP
GBKEE
發短消息
加為好友
GBKEE
當前離線
UID
16
帖子
5923
主題
13
精華
1
積分
5986
金錢
5986
點名
0
作業系統
win10
軟體版本
Office 2010
閱讀權限
150
性別
男
來自
台灣基隆
在線時間
4811 小時
註冊時間
2010-5-1
最後登錄
2022-1-23
超級版主
帖子
5923
主題
13
精華
1
積分
5986
點名
0
作業系統
win10
軟體版本
Office 2010
閱讀權限
150
性別
男
來自
台灣基隆
註冊時間
2010-5-1
最後登錄
2022-1-23
4
#
發表於 2011-5-24 17:12
|
只看該作者
本帖最後由 GBKEE 於 2011-5-24 20:23 編輯
回復
3#
vpower
幫你錄製了
Sub Macro1()
'
' Macro1 Macro
' 在 2011/5/24 錄製的巨集
'
'
Range("G2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-3]="""","""",RC[-3]+TIME(0,5,0))"
End Sub
複製代碼
Formula
R1C1
, Formula 不一樣
TOP
luhpro
發短消息
加為好友
luhpro
當前離線
UID
47
帖子
835
主題
6
精華
0
積分
915
金錢
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
在線時間
429 小時
註冊時間
2010-5-3
最後登錄
2024-11-14
高中生
帖子
835
主題
6
精華
0
積分
915
點名
0
作業系統
Win 10,7
軟體版本
2019,2013,2003
閱讀權限
50
性別
男
註冊時間
2010-5-3
最後登錄
2024-11-14
5
#
發表於 2011-5-25 00:47
|
只看該作者
回復
3#
vpower
剛剛發現其實你用這樣下就不會有錯了 :
Range("G2").Formula = "=IF(D2="""","""",D2+TIME(0,5,0))"
這是因為 FormulaR1C1 右方的公式中必須要用 RxCx 的形式來表示儲存格的位址,
所以 D2 變成要用 R2C4 來表示.(然出來的結果會變成 $D$2)
而若想以相對位址來表示要用 R[2]C[4],
糟糕的是 Excel 又會自動以目前的儲存格位址去計算上述的相對位置, (結果會計算成 K4)
所以以 FormulaR1C1 來指定固定且不帶 $ 的位址會比用 Formula 來的複雜.
TOP
vpower
發短消息
加為好友
vpower
當前離線
UID
383
帖子
155
主題
56
精華
0
積分
242
金錢
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
在線時間
64 小時
註冊時間
2010-5-29
最後登錄
2011-7-18
禁止發言
帖子
155
主題
56
精華
0
積分
242
點名
0
作業系統
WinXP
軟體版本
專業版2002
閱讀權限
0
註冊時間
2010-5-29
最後登錄
2011-7-18
6
#
發表於 2011-5-25 08:30
|
只看該作者
謝謝GBKEE版主和luhpro大大,問題依照你們所使用的方式都可以解決我的問題,感謝.
TOP
靜思自在 :
真正的愛心,是照顧好自己的這顆心。
返回列表
下一主題
上一主題
生活與感動
EXCEL專屬討論區
Excelㄧ般區
Excel程式區
進階應用專區
OFFICE 系列
Word
PowerPoint
Access
Office不分區
程式語言
VB 與 VB.Net
C 與 C#
Java 與 J#
程式設計不分區
資料庫
ORACLE
My SQL
MS SQL
網頁設計
ASP 與 ASP.NET
PHP
PHP+MySQL 入門實作
JavaScript
FLASH / ActionScript
HTM/ HTML/ CSS
網頁設計不分區
電腦與作業系統
電腦各種硬體討論
一般電腦軟體討論
論壇事務
管理公告
投訴反映
新手測試
愛 ‧ 生活
公益佈告欄
生活與感動
[收藏此主題]
[關注此主題的新回復]
[通過 QQ、MSN 分享給朋友]
申請友情鏈接
Facebook粉絲