的一些問題我正在試驗(代碼,因爲它是有效的)與一些將數據寫入表的用戶表單代碼。 ST是一些命名範圍:有關與聲明
With Range(ST)
.Cells(Range(ST).Count).Offset(1, 0).EntireRow.Insert
.Resize(Range(ST).Rows.Count + 1).Name = ST
.Cells(Range(ST).Rows.Count, 1) = Range(ST).Rows.Count - 1
.Cells(Range(ST).Rows.Count, 2) = TextBox2.Text
End With
我的問題是:
爲什麼我可以改寫爲下面的第二和第三行沒有它影響最終結果
.Cells(.Count).Offset(1, 0).EntireRow.Insert
.Resize(.Rows.Count + 1).Name = ST
但更改其他行例如
.Cells(.Rows.Count, 2) = TextBox2.Text
導致應該包含01的表上的條目返回空白單元格。
感謝(重碼的任何其他雜項意見也歡迎)
編輯:
不幸的是我貼正是因爲它的這個問題是你們說的不是行爲。在詳細閱讀幫助文件後,我相信下面這行:
「表達式在進入塊時計算一次,不能從With塊內重新分配表達式。
意味着:
.Resize(Range(ST).Rows.Count + 1).Name = ST
是問題,並採取了兩條線:
.Cells(Range(ST).Count).Offset(1, 0).EntireRow.Insert
.Resize(Range(ST).Rows.Count + 1).Name = ST
之外如預期的那樣與塊和一切工作!我有正確的解釋嗎? 如果我上傳文件,會有人感興趣嗎? (玩具實驗代碼少於幾行)
刪除'範圍(ST)'內'終with'不應有任何區別的代碼 –