物件變數或with塊變數未設定,vba 物件變數或with塊未設定

2022-05-19 10:38:57 字數 6058 閱讀 5610

1樓:匿名使用者

private sub cmdok_click()dim username1 as string, username2 as string

adodc1.refresh

adodc2.refresh

username1 = text1.textif option1.value thenset text3.

datasource = adodc1text3.datafield = "口令"

adodc1.recordset.movefirstif username1 <> "" thenusername2 = "使用者名稱='" & username1 & "'"

adodc1.recordset.find username2if adodc1.recordset.eof thenmsgbox "使用者名稱錯誤請重輸", 16, "錯誤"

else

if text2.text <> text3.text thenmsgbox "密碼錯誤請重輸", 16, "錯誤"

text2.text = ""

else

mdiform1.show

form1.hide

end if

end if

end if

else

if option2.value thenset text3.datasource = adodc2text3.datafield = "口令"

adodc2.recordset.movefirstif username1 <> "" thenusername2 = "工號='" & username1 & "'"

adodc2.recordset.find username2if adodc2.recordset.eof thenmsgbox "使用者名稱錯誤請重輸", 16, "錯誤"

else

if text2.text <> text3.text thenmsgbox "密碼錯誤請重輸", 16, "錯誤"

text2.text = ""

else

mdiform1.show

form1.hide

end if

end if

end if

end if

end if

end sub

2樓:匿名使用者

哪行出問題?

一般是窗體上沒那個名字的物件或者沒那個物件的屬性、方法(有可能你敲錯了)

也可能沒引用

3樓:匿名使用者

最有可能的是部件沒有引用

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

4樓:知足

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實現複雜邏輯的統計(比如從多個表中,自動生成按合同號來跟蹤生產量、入庫量、銷售量、庫存量的統計清單)等。

5樓:匿名使用者

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

end with

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

6樓:旅遊達人傲傲

回答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塊變數未設定」是怎麼回事?

7樓:知足

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實現複雜邏輯的統計(比如從多個表中,自動生成按合同號來跟蹤生產量、入庫量、銷售量、庫存量的統計清單)等。

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條

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

9樓:沉月逃

excel選項 --- 信任中心設定 --- 載入項, 勾選「要求受信任的釋出者簽署應用程式載入項」

勾選這項後,原來不能執行的vba程式能正常執行了。

10樓:

**不全。

for i10 = 46 to i9

sheet7.range("a46:e46").selectselection.listobject.listrows(2).delete

next

這段你再好好瞅瞅。無意義的for迴圈?

11樓:旅遊達人傲傲

回答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條

12樓:匿名使用者

vba 物件變數或with塊未設定

13樓:依然特雷西

vba 物件變數或with塊未設定是設定錯誤造成的,解決方法為:

1、首先開啟excle軟體,在選單中選擇「開發工具」-》「visual basic」,進入vba的程式設計介面。

2、選擇一個物件,這裡選擇sheet1,新建一個子過程setobgjs。

3、首先是宣告物件變數,通過dim來宣告,和普通變數的宣告很類似,只不過是資料型別變為了object,如: dim obj1 as object。

4、設定該物件變數的值,可以通過set方法來設定,如set obj1 = range("a1")。

5、對這個物件所表示的邊框設定底色,為黃色。

6、最後選擇「執行」按鈕執行。

14樓:匿名使用者

物件變數或 with 塊變數沒有設定(錯誤 91)

建立物件變數有兩個步驟。第一,必須先宣告物件變數。然後必須用 set 語句將一個正確的引用賦值給物件變數。

同樣地,with...end with 塊必須先用 with 語句進入點來執行初始化。此錯誤有以下的原因和解決方法:

試圖使用的物件變數,還沒有用一個正確物件的引用來賦值。

給物件變數指定或再指定一個引用。例如,如果在下列的**中省略 set 語句的話,那麼引用 myobject 將會產生錯誤:

dim myobject as object ' 建立物件變數。

set myobject = sheets(1) ' 建立一個正確的物件引用。

mycount = myobject.count ' 計數值賦給 mycount。

試圖用的物件變數已經被設為 nothing。

set myobject = nothing ' 釋放此物件。

mycount = myobject.count ' 引用了已釋放的物件。

再指定引用給物件變數。例如,使用新的 set 語句給物件設定新的引用。

此物件是正確的物件,但沒有被設定,因為在物件庫中,在 「引用」 對話方塊中沒有被選取。

在 「新增引用」 對話方塊選擇物件庫。

在 with 塊內goto 語句的去向。

不要跳進 with 塊。確保塊使用 with 語句進入點以執行初始化。

當選了 「設定下一條語句」 命令時,在 with 塊內指定了一行。

with 塊必須用 with 語句執行初始化。

vba物件變數未設定,vba 物件變數或with塊未設定

sub sp sheets sheet1 range b1 b10 find what 男 entirerow.copy activesheet.paste end sub 不過估計你要的是在某列查詢包含某字元的資料然後一次過複製貼上吧,附件是陣列 like函式做的,點選 執行 按鈕即可。works...

還有個問題,環境變數怎麼設定,環境變數的設定問題?

臨時檔案設定是在 internet選項 的.裡面有個internet臨時檔案框框裡,點設定 再點 轉移資料夾,移到你想要的地方就可以了 使用者變數 temp systemroot temp tmp systemroot temp 系統變數 fp no host check no number of ...

怎麼設定informix環境變數

view setenv 這是電腦常識嗎?怎麼電腦常識裡什麼問題都有呀,是不是想自問自答呀 在sco unix裡面,我安裝了installesql,現在我要給環境變數informixdir賦值,所以要安裝目錄?怎麼找呀?首先檢視informixdir環境變數是否被設定echo informixdir ...