標題:
[發問]
Range()內字串
[打印本頁]
作者:
prince120101
時間:
2014-12-24 17:34
標題:
Range()內字串
請問各位大大
下列這四行Range()裡面的 字串 可以只用一行表示嗎??
Range("A4").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlUp)).Select
複製代碼
作者:
owen06
時間:
2014-12-24 19:43
回復
1#
prince120101
我只能寫到2行…
Sub test()
[a4].End(4).Select
Range(Selection, Selection.End(3).End(3)).Select
End Sub
複製代碼
作者:
GBKEE
時間:
2014-12-24 21:13
回復
1#
prince120101
是這樣嗎?
Sub Ex()
With Range("A4")
Range(.Cells, .End(xlDown).End(xlDown).End(xlUp)).Select
End With
End Sub
複製代碼
作者:
prince120101
時間:
2014-12-25 10:48
回復
3#
GBKEE
回復
2#
owen06
感謝 owen06 GBKEE 的回覆
會有這想法是
我的EXCEL VBA 表單 上
動作程序
有兩個ListBox
ListBox1 內容是 sheet1~sheet9
當選擇sheet1時
ListBox2內容會顯示 sheet1"A4"之後 儲存格有資料的內容
當選擇sheet2時
ListBox2內容會顯示 sheet2"A4"之後 儲存格有資料的內容..等等
然而 這 sheet1~9 "A4" 一開始是無資料的 後續會增加
Range("A4").Select
If ListBox1.Value = "sheet1" Then ListBox2.List = Workbooks("活頁簿1.xlsm").Sheets("sheet1").Range(Selection, Selection.End(xlDown)).Value
If ListBox1.Value = "sheet2" Then ListBox2.List = Workbooks("活頁簿1.xlsm").Sheets("sheet2").Range(Selection, Selection.End(xlDown)).Value
複製代碼
那時候測試後 如果換選擇sheet2時 這程序就出現錯誤了~
後來也就想說看可不可以把Range("A4")放入 Range(Selection, Selection.End(xlDown))裡面
Range("A4").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlUp)).Select
複製代碼
這是那時候用巨集錄製的
但如果遇到一開始"A4"沒資料的時候
這動作也就不成立了
作者:
GBKEE
時間:
2014-12-25 11:02
回復
4#
prince120101
試試看
If ListBox1.Value <> "" Then
ListBox2.Clear
With Workbooks("活頁簿1.xlsm").Sheets(ListBox1)
If .Range("A4").End(xlDown).Row <> .Rows.Count Then '有資料
ListBox2.List = .Range(.Range("A4"), .Range("A4").End(xlDown)).Value
End If
End With
End If
複製代碼
作者:
ashan0418
時間:
2014-12-25 11:05
回復
2#
owen06
owen06 大大
可否請教end(3)中的3代表什麼意思??
能從何處查詢相關的資訊呢??
作者:
owen06
時間:
2014-12-25 11:51
回復
6#
ashan0418
那是程式的簡碼
end(1)=end(xltoleft)
2 = xltoright
3 = xlup
4 = xldown
很多後面有接括號的語法,其實都有代碼可以輸入以節省時間,只是要怎麼查可能要其他高手才能解答了,
我也是無意間google時看到的。
作者:
ashan0418
時間:
2014-12-25 12:31
回復
7#
owen06
原來如此,感謝您的分享!!
作者:
prince120101
時間:
2014-12-25 13:10
回復
5#
GBKEE
謝謝 GBKEE
剛測試後可以動作了
Sheets(ListBox1.Value)不過這邊好像要加.value 才能執行
If ListBox1.Value <> "" Then
ListBox2.Clear
With Workbooks("活頁簿.xlsm").Sheets(ListBox1.Value)
If .Range("A4").End(xlDown).Row <> .Rows.Count Then '有資料
ListBox2.List = .Range(.Range("A4"), .Range("A4").End(xlDown)).Value
End If
End With
End If
複製代碼
作者:
prince120101
時間:
2014-12-25 13:16
回復
7#
owen06
感謝 owen06 的分享~~~
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)