VBA中執行錯誤91 物件變數或with塊變數未設定,請大家幫忙看看

時間 2022-07-31 04:57:39

1樓:知足

ng = range(cells(2, 1), cells(2, 13)).offset(j - 1, 0)

改 set rng = range(cells(2, 1), cells(2, 13)).offset(j - 1, 0)

用途由於微軟office軟體的普及,人們常見的辦公軟體office軟體中的word、excel、access、powerpoint都可以利用vba使這些軟體的應用更高效率,例如:通過一段vba**,可以實現畫面的切換;可以vba6實現複雜邏輯的統計(比如從多個表中,自動生成按合同號來跟蹤生產量、入庫量、銷售量、庫存量的統計清單)等。

2樓:匿名使用者

with selection.interior.color = 65535 '單元格底紋的顏色或圖形物件的填充

end with

這裡錯了吧,selection.interior 這個前面要加上rng 吧

3樓:旅遊達人傲傲

回答excel用巨集做查詢動作,如果查詢不到,就出這個錯誤。

修改**前面部分如下:

dim frow as integer

if txt1.value = "" then '先判斷使用者名稱是否為空

msgbox "使用者名稱不能為空!", vbinformation, "系統提示"

exit sub

end if

dim xrng as range

set xrng = sheets("使用者表").range("a3:a53") '再判斷使用者名稱是否不存在

msgbox "無此使用者名稱!", vbinformation, "系統提示"

exit sub

end if

with sheets("使用者表") '最後判斷使用者名稱與密碼是否一致

frow = .range("a3:a53").find(what:=txt1).row

if .cells(frow, 2) > cstr(txt2.text) then

msgbox ("密碼錯誤")

txt1.text = ""

txt2.text = ""

exit sub

end if

希望可以幫到您哦親

更多20條

請教excel大神,vba 提示錯誤:執行時錯誤91,物件變數或with塊變數未設定,實在不知**有問題 5

4樓:人皇

直觀上沒看出什麼毛病,要說不足就是過程名字是漢字,外加單元物件未指名呼叫的屬性。把你錯誤後除錯的介面截圖發出來看看

5樓:匿名使用者

問題很難找,可以不停按f8,一行一行執行,出錯了就知道哪一行有問題

excel vba執行巨集時,提示:執行時錯誤'91';物件變數或with塊變數未設定

6樓:匿名使用者

可能原因是在每二行中未find "dm"、"jc"、"lb",你需要對未找到進行處理

比如在巨集前面加上語句

on error resume next

等,看你希望怎麼處理。

7樓:匿名使用者

set rng = thisworkbook.sheets("sheet1").rows("2:2").find("dm")

x = rng.column

set rng = thisworkbook.sheets("sheet1").rows("2:2").find("jc")

y = rng.column

set rng = thisworkbook.sheets("sheet1").rows("2:2").find("lb")

z = rng.column

以上find,確實都能找到結果嗎?

如果都能找到結果,也就是反 返回的rng 不是nothing的話,建議把**發全看看

日常編寫**時,建議**做以下調整:

set rng = thisworkbook.sheets("sheet1").rows("2:2").find("dm")

if rng is nothing then

msgbox "dm:不存在"

else

x = rng.column

endif

8樓:旅遊達人傲傲

回答excel用巨集做查詢動作,如果查詢不到,就出這個錯誤。

修改**前面部分如下:

dim frow as integer

if txt1.value = "" then '先判斷使用者名稱是否為空

msgbox "使用者名稱不能為空!", vbinformation, "系統提示"

exit sub

end if

dim xrng as range

set xrng = sheets("使用者表").range("a3:a53") '再判斷使用者名稱是否不存在

msgbox "無此使用者名稱!", vbinformation, "系統提示"

exit sub

end if

with sheets("使用者表") '最後判斷使用者名稱與密碼是否一致

frow = .range("a3:a53").find(what:=txt1).row

if .cells(frow, 2) > cstr(txt2.text) then

msgbox ("密碼錯誤")

txt1.text = ""

txt2.text = ""

exit sub

end if

希望可以幫到您哦親

更多20條

vba中執行提示「錯誤91:物件變數或with塊變數未設定」是怎麼回事?

9樓:知足

ng = range(cells(2, 1), cells(2, 13)).offset(j - 1, 0)

改 set rng = range(cells(2, 1), cells(2, 13)).offset(j - 1, 0)

用途由於微軟office軟體的普及,人們常見的辦公軟體office軟體中的word、excel、access、powerpoint都可以利用vba使這些軟體的應用更高效率,例如:通過一段vba**,可以實現畫面的切換;可以vba6實現複雜邏輯的統計(比如從多個表中,自動生成按合同號來跟蹤生產量、入庫量、銷售量、庫存量的統計清單)等。

10樓:旅遊達人傲傲

回答excel用巨集做查詢動作,如果查詢不到,就出這個錯誤。

修改**前面部分如下:

dim frow as integer

if txt1.value = "" then '先判斷使用者名稱是否為空

msgbox "使用者名稱不能為空!", vbinformation, "系統提示"

exit sub

end if

dim xrng as range

set xrng = sheets("使用者表").range("a3:a53") '再判斷使用者名稱是否不存在

msgbox "無此使用者名稱!", vbinformation, "系統提示"

exit sub

end if

with sheets("使用者表") '最後判斷使用者名稱與密碼是否一致

frow = .range("a3:a53").find(what:=txt1).row

if .cells(frow, 2) > cstr(txt2.text) then

msgbox ("密碼錯誤")

txt1.text = ""

txt2.text = ""

exit sub

end if

希望可以幫到您哦親

更多20條

求助「執行時錯誤『91』;未設定物件變數或with block變數

vba 提示錯誤:執行時錯誤91,物件變數或with塊變數未設定,請高的指點,謝謝

11樓:匿名使用者

sub vba新增批註()

dim strcomment as string, ywidth as long,endrow, sn, tmp

with sheet1

endrow = .[a65536].end(xlup).row

for sn = 5 to endrow

strcomment = .cells(sn, 205)

if msgbox(sn, vbokcancel) <>vbok then exit sub

with .cells(sn, "h")

tmp = .text

if tmp = "" then

.clearcomments

else

if .comment is nothing then   '沒有備註則新增備註

.addcommenttext:=strcomment

else                          '已經有備註則備註新增內容

.comment.texttext:=strcomment

end if

.comment.visible = false

with .comment.shape

.textframe.characters.font.size = 10

.textframe.autosize =true

if .width > 250 then

ywidth = .width * .height

.width = 150

.height = (ywidth /200) * 1.8

end if

end with

end if

end with

next sn

end with

end sub

12樓:旅遊達人傲傲

回答excel用巨集做查詢動作,如果查詢不到,就出這個錯誤。

修改**前面部分如下:

dim frow as integer

if txt1.value = "" then '先判斷使用者名稱是否為空

msgbox "使用者名稱不能為空!", vbinformation, "系統提示"

exit sub

end if

dim xrng as range

set xrng = sheets("使用者表").range("a3:a53") '再判斷使用者名稱是否不存在

msgbox "無此使用者名稱!", vbinformation, "系統提示"

exit sub

end if

with sheets("使用者表") '最後判斷使用者名稱與密碼是否一致

frow = .range("a3:a53").find(what:=txt1).row

if .cells(frow, 2) > cstr(txt2.text) then

msgbox ("密碼錯誤")

txt1.text = ""

txt2.text = ""

exit sub

end if

希望可以幫到您哦親

更多20條

excel vba 執行時錯誤91 物件變數或with塊變數未設定

13樓:匿名使用者

沒有活動的worksheet物件。

14樓:旅遊達人傲傲

回答excel用巨集做查詢動作,如果查詢不到,就出這個錯誤。

修改**前面部分如下:

dim frow as integer

if txt1.value = "" then '先判斷使用者名稱是否為空

msgbox "使用者名稱不能為空!", vbinformation, "系統提示"

exit sub

end if

dim xrng as range

set xrng = sheets("使用者表").range("a3:a53") '再判斷使用者名稱是否不存在

msgbox "無此使用者名稱!", vbinformation, "系統提示"

exit sub

end if

with sheets("使用者表") '最後判斷使用者名稱與密碼是否一致

frow = .range("a3:a53").find(what:=txt1).row

if .cells(frow, 2) > cstr(txt2.text) then

msgbox ("密碼錯誤")

txt1.text = ""

txt2.text = ""

exit sub

end if

希望可以幫到您哦親

更多20條

Vba如何排序,vba 中字串按照順序排列

有些特殊排序要求,對於excel標準功能是無法解決的。這時就可以用vba來對應。例如 有一張原始資料表,如圖 根據此原始資料建立了一張分類彙總資料表,如圖 要求是,當明細表資料發生變更時,希望彙總表能自動排序。這樣的要求,用手工排序就無法自動了。這樣的要求只能依賴於vba。首先編制乙個排序的程式,如...

執行時報錯sql語句錯誤,執行SQL語句錯誤

create or replace procedure pro test ascursor cursor1 isselect name from t userinfo username varchar2 10 begin for username in cursor1loop begin dbms ...

VBA中不能用call呼叫函式嗎

函式不能用call,call用來呼叫子過程 sub 實際上子過程不用call呼叫也可以。ecxel vba 支援 call 呼叫 我只再窗體中用過 當然可以。call 語句 將控制權轉移到乙個 sub 過程,function 過程,或動態鏈結庫 dll 過程。語法 call name argumen...

excel 中VBA單元格引用問題。

用連線字串形式,將用 分出來。excel vba程式設計中的單元格內容引用問題 excel中a1格內的判斷條件不能在vba中直接使用吧?看看你a1是如何寫的,if語句又是如何寫的。excel vba中單元格區域內容引用的問題!15 excel中vba引用問題 舉例 excel2007 開啟vba器。...

EXCEL中如何用VBA刪除多個工作表

sub ds for i worksheets.count to 1 step 1 if worksheets i name like sh then 這裡的sh區分大小寫 worksheets i delete end if next end sub 如何使用excel vba 開啟乙個excel...