註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excel程式區
» 不知道哪裡出問題 執行階段錯誤
返回列表
下一主題
上一主題
發帖
[發問]
不知道哪裡出問題 執行階段錯誤
j88141
發短消息
加為好友
j88141
當前離線
UID
16479
帖子
46
主題
10
精華
0
積分
88
金錢
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
在線時間
139 小時
註冊時間
2014-1-27
最後登錄
2018-3-30
中學生
帖子
46
主題
10
精華
0
積分
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
註冊時間
2014-1-27
最後登錄
2018-3-30
1
#
跳轉到
»
倒序看帖
打印
字體大小:
t
T
發表於 2014-3-13 21:35
|
只看該作者
[發問]
不知道哪裡出問題 執行階段錯誤
本帖最後由 j88141 於 2014-3-13 21:38 編輯
不知道哪裡做錯
執行不出來
謝謝各位指教
下載
(104.28 KB)
2014-3-13 21:34
Private Sub Worksheet_Change(ByVal myRange As Range)
Set myRange = Worksheets(1).Range("A1")
Range("A1") = "=SUM(B1:B10)" '
儲存格
A1 等於 SUM(B1:B10)
If Range("A1") >= Range("E1") And Range("A1") <= Range("G1") Then
'如果 儲存格A1 大於等於 儲存格E1 和 小於儲存格G1的話
MsgBox Range("D1") & 和& & Range("F1"), vbOKOnly
'顯示.....
ElseIf Range("A1") < Range("E1") Then
'如果儲存格A1小於儲存格E1
Range("A1").Interior.ColorIndex = 3
'儲存格顯示紅色
ElseIf Range("A1") > Range("F1") Then
'如果儲存格A1大於儲存格F1
MsgBox Range("E1") & 和& & Range("G1"), vbCritical
'顯示.....
End If
End Sub
樓主熱帖
不同工作表但相對應的儲存格重複
如何自行判斷並填入
用勾選讓儲存格不能等於
如何在現有的程式碼加入countif
如何從網頁抓取特定資料放進excel中
關於資料驗證問題
兩個工作表輸入相同資料會出現訊息
儲存格有什麼 ,其他儲存格才能填什麼
儲存格內有函數,但想要手動輸入時會讓原有
收藏
分享
owen06
發短消息
加為好友
owen06
(阿軒)
當前離線
UID
14304
帖子
396
主題
12
精華
0
積分
425
金錢
425
點名
0
作業系統
Win10
軟體版本
Office 2016
閱讀權限
20
性別
男
來自
台中
在線時間
817 小時
註冊時間
2013-7-2
最後登錄
2024-8-23
暱稱:
阿軒
中學生
帖子
396
主題
12
精華
0
積分
425
點名
0
作業系統
Win10
軟體版本
Office 2016
閱讀權限
20
性別
男
來自
台中
註冊時間
2013-7-2
最後登錄
2024-8-23
2
#
發表於 2014-3-14 00:12
|
只看該作者
回復
1#
j88141
Private Sub Worksheet_Change(ByVal myRange As Range)
Application.EnableEvents = False
Set myRange = Sheet1.Range("A1")
Range("A1") = "=SUM(B1:B10)" '儲存格A1 等於 SUM(B1:B10)
If Range("A1") >= Range("E1") And Range("A1") <= Range("G1") Then
'如果 儲存格A1 大於等於 儲存格E1 和 小於儲存格G1的話
MsgBox Range("D1") & 和& & Range("F1"), vbOKOnly
'顯示.....
ElseIf Range("A1") < Range("E1") Then
'如果儲存格A1小於儲存格E1
Range("A1").Interior.ColorIndex = 3
'儲存格顯示紅色
ElseIf Range("A1") > Range("F1") Then
'如果儲存格A1大於儲存格F1
MsgBox Range("E1") & 和& & Range("G1"), vbCritical
'顯示.....
End If
Application.EnableEvents = True
End Sub
複製代碼
TOP
j88141
發短消息
加為好友
j88141
當前離線
UID
16479
帖子
46
主題
10
精華
0
積分
88
金錢
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
在線時間
139 小時
註冊時間
2014-1-27
最後登錄
2018-3-30
中學生
帖子
46
主題
10
精華
0
積分
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
註冊時間
2014-1-27
最後登錄
2018-3-30
3
#
發表於 2014-3-14 00:22
|
只看該作者
回復
2#
owen06
照你這樣輸入
可是程式好像也不理我
附檔案給你
剛好剛剛升級成中學生
可以下載附件了
檔案.rar
(12.92 KB)
下載次數: 9
2014-3-14 00:21
TOP
Hsieh
發短消息
加為好友
Hsieh
當前離線
UID
3
帖子
4901
主題
44
精華
24
積分
4916
金錢
4916
點名
149
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
在線時間
4144 小時
註冊時間
2010-4-30
最後登錄
2025-6-21
超級版主
帖子
4901
主題
44
精華
24
積分
4916
點名
149
作業系統
Windows 7
軟體版本
Office 20xx
閱讀權限
150
性別
男
來自
台北
註冊時間
2010-4-30
最後登錄
2025-6-21
4
#
發表於 2014-3-14 08:17
|
只看該作者
回復
3#
j88141
Worksheet_Change事件程序,是在工作表內容改變時觸發
你在參數中設置了ByVal myRange As Range
代表改變的儲存格是myRange
你沒必要在程序內又設置Set myRange = 工作表1.Range("A1")
雖然這樣設置如果是在同一工作表內並無不可
但是,如果要在程序中用到取得當前變化之儲存格時就會喪失
猜測看看是否是你要的
Private Sub Worksheet_Change(ByVal myRange As Range)
If Intersect(myRange, [B1:B10]) Is Nothing Then Exit Sub '變動儲存格不在B1:B10則退出程序
Range("A1") = Application.Sum([B1:B10]) '儲存格A1 等於 SUM(B1:B10)
If Range("A1") >= Range("E1") And Range("A1") <= Range("G1") Then
'如果 儲存格A1 大於等於 儲存格E1 和 小於儲存格G1的話
MsgBox Range("D1") & 和& & Range("F1"), vbOKOnly
'顯示.....
ElseIf Range("A1") < Range("E1") Then
'如果儲存格A1小於儲存格E1
Range("A1").Interior.ColorIndex = 3
'儲存格顯示紅色
ElseIf Range("A1") > Range("F1") Then
'如果儲存格A1大於儲存格F1
MsgBox Range("E1") & "和&" & Range("G1"), vbCritical
'顯示.....
End If
End Sub
複製代碼
學海無涯_不恥下問
TOP
j88141
發短消息
加為好友
j88141
當前離線
UID
16479
帖子
46
主題
10
精華
0
積分
88
金錢
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
在線時間
139 小時
註冊時間
2014-1-27
最後登錄
2018-3-30
中學生
帖子
46
主題
10
精華
0
積分
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
註冊時間
2014-1-27
最後登錄
2018-3-30
5
#
發表於 2014-3-15 22:14
|
只看該作者
回復
4#
Hsieh
可以用~謝謝
TOP
j88141
發短消息
加為好友
j88141
當前離線
UID
16479
帖子
46
主題
10
精華
0
積分
88
金錢
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
在線時間
139 小時
註冊時間
2014-1-27
最後登錄
2018-3-30
中學生
帖子
46
主題
10
精華
0
積分
88
點名
0
作業系統
WIN10
軟體版本
excel2016
閱讀權限
20
性別
男
來自
台灣
註冊時間
2014-1-27
最後登錄
2018-3-30
6
#
發表於 2014-3-16 12:15
|
只看該作者
回復
4#
Hsieh
可以再請教Hsieh 版主
比如說如果我想在
儲存格 B5 加入
=COUNTIF(E6,"蘋果")+COUNTIF(E10,"蘋果")+COUNTIF(E14,"蘋果")+COUNTIF(E18,"蘋果")+COUNTIF(E22,"蘋果")
儲存格B7 加入
=COUNTIF(E8,"蘋果")+COUNTIF(E11,"香蕉")+COUNTIF(E15,"香蕉")+COUNTIF(E19,"香蕉")+COUNTIF(E23,"香蕉")
的話
程式碼就不能執行了
那程式碼該如何改寫呢?
謝謝Hsieh 版主幫忙
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粉絲