標題:
[發問]
關於VBA變數問題
[打印本頁]
作者:
chiang0320
時間:
2016-3-17 23:38
標題:
關於VBA變數問題
請問一個問題
浮動的大數據,利用countif函數算出數量
假設算出來數量是35663,再把列刪掉,如下:
------------------------------------------------------------------
Sub 巨集1()
Rows("2:
35663
").Select
Selection.Delete Shift:=xlUp
End Sub
------------------------------------------------------------------
每次需要用手動自己輸入所得的數量
35663是一個變數,請問要怎麼寫成VBA?不需要再手動輸入?
作者:
訪客
時間:
2016-3-18 21:41
回復
1#
chiang0320
x = 35663
Rows("2:" & x).Delete
作者:
chiang0320
時間:
2016-3-19 00:33
回復
2#
訪客
Rows("2:x").delete 為何不能寫成這樣?
正確寫法,為何""不用包到x 卻多了&
作者:
c_c_lai
時間:
2016-3-19 07:27
回復
4#
chiang0320
x 為一個變數型態宣告
你的提問: 為何""不用包到x 卻多了&
Rows("2:x").delete
"2:x" 被視為是一個字串型態,執行時則會產生
------------------------
執行階段錯誤 '13'
型態不符合
------------------------
x = 35663
Rows("2:" & x).Delete
"2:" & x 即等於 "2:35663"
所以一切均能正常執行。
作者:
chiang0320
時間:
2016-3-19 10:09
回復
5#
c_c_lai
懂了,謝謝!
作者:
clio
時間:
2016-3-24 11:13
這個有二種方式處理
Dim x As Long
Dim Rows_Str As String
'x變數請自行設定
Rows_Str = "2:" & CStr(x)
Rows(Rows_Str).Delete shift:=xlUp
'另一個方法是用Range來處理
With ActiveSheet
.Range(.Rows(2), .Rows(x)).Delete shift:=xlUp
End With
這二個都能達到相同的目的
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)