標題:
想請問大大如何把儲存格資料對換?
[打印本頁]
作者:
tku0216
時間:
2011-11-16 17:17
標題:
想請問大大如何把儲存格資料對換?
請問大大們,
我有一份excel表格,假設所佔的位置為a1:c10(共3欄10列),我可否用程式控制,將特定的“兩列”資料對調。
例如:A1:A3與C1:C10整列對換。
作者:
mark15jill
時間:
2011-11-16 17:25
本帖最後由 mark15jill 於 2011-11-16 17:27 編輯
方法1..
如 A1:A3與C1:C10整列對換 (這應該是 整欄吧
先將 A1:A3 複製到 D1到D3
在把C1:C10 複製到 A1:A3
把D1到D3 貼到 C1:C10..
方法2:
A欄複製到 D欄
C欄剪下貼上到A欄
D欄剪下貼上到C欄
簡單原始碼如下
Sub Macro1()
'
' Macro1 Macro
'
' 快速鍵: Ctrl+Shift+R
'
Columns("A:A").Select
Selection.Copy
Columns("D:D").Select
ActiveSheet.Paste
Columns("C:C").Select
Application.CutCopyMode = False
Selection.Copy
Columns("A:A").Select
ActiveSheet.Paste
Columns("D:D").Select
Application.CutCopyMode = False
Selection.Copy
Columns("C:C").Select
ActiveSheet.Paste
Columns("D:D").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub
Sub Macro2()
'
' Macro2 Macro
'
' 快速鍵: Ctrl+Shift+T
'
Range("A1:A3").Select
Selection.Copy
Range("D1").Select
ActiveSheet.Paste
Range("C1:C10").Select
Application.CutCopyMode = False
Selection.Copy
Range("A1").Select
ActiveSheet.Paste
Range("D1:D3").Select
Application.CutCopyMode = False
Selection.Copy
Range("C1").Select
ActiveSheet.Paste
Range("D1:D4").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub
複製代碼
作者:
tku0216
時間:
2011-11-16 17:57
本帖最後由 tku0216 於 2011-11-16 18:01 編輯
多謝指點,不過這應該是用錄製巨集的方式完成的,是否有更好的辦法呢?因為若是需要調換的儲存格不只是我問題所問的,而是需要由使用者自行選擇,那就不合用了。
作者:
GBKEE
時間:
2011-11-16 18:06
回復
3#
tku0216
A1:A3與C1:C10整列對換 要如何換法?
是這樣嗎? (對換)
Sub Ex()
Dim AR1, AR2
AR1 = [A1:A3]
AR2 = [C1:C3]
[A1:A3] = AR2
[C1:C3] = AR1
End Sub
複製代碼
作者:
tku0216
時間:
2011-11-16 18:34
多謝版主分享,我對這個公式很有興趣,因為以我以前寫程式的經驗,一般來說都需要設定一個暫存格,把資料移到暫存空間,再進行對換,但是看起來excel似乎不必。
還有想請教版主,如果沒有指定哪兩列,而是由使用者自行選擇,那麼程式該怎麼改?
(譬如是否可以選擇B1:B3以及D1
3,按下按鈕,兩列對換)
作者:
oobird
時間:
2011-11-16 20:25
Sub 對換()
a = Range(Selection.Areas(1).Address)
b = Range(Selection.Areas(2).Address)
Range(Selection.Areas(1).Address) = b
Range(Selection.Areas(2).Address) = a
End Sub
複製代碼
作者:
tku0216
時間:
2011-11-17 13:35
謝謝版主分享,我馬上去試試看~~
作者:
tku0216
時間:
2011-11-17 15:47
真的是相當神奇,感謝各位讓我又多學了一招。
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)