如何在Excel中反向複製貼上行或列?
當我們在Excel中有一列元素,並且想要將其反向排列時,如果手動操作,可能會是一個複雜且冗長的過程。如果元素是有序列表,我們可以很容易地反向排序,但對於無序列表則不行。閱讀本教程,學習如何在Excel中反向複製貼上行或列。
在Excel中反向複製貼上列
在這裡,我們將插入一個VBA模組,然後執行它來完成任務。讓我們來看一下在Excel中反向複製貼上列的簡單步驟。
步驟1
考慮任何包含無序元素列表的Excel表格,類似於下面的圖片。
我們可以使用VBA應用程式來完成我們的過程。要開啟VBA應用程式,右鍵單擊工作表名稱並選擇“檢視程式碼”。
然後,單擊插入並選擇模組,然後將以下程式1鍵入文字框中,如下圖所示。
右鍵點選 > 檢視程式碼 > 插入 > 模組 > 程式1
程式1 (此處應插入程式程式碼)
Sub Flipvertically()
'Updated By Nirmal
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "Reverse the Order"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For j = 1 To UBound(Arr, 2)
k = UBound(Arr, 1)
For i = 1 To UBound(Arr, 1) / 2
xTemp = Arr(i, j)
Arr(i, j) = Arr(k, j)
Arr(k, j) = xTemp
k = k - 1
Next
Next
WorkRng.Formula = Arr
End Sub
步驟2
現在將工作表另存為啟用宏的工作表,在vba應用程式視窗中,單擊F5並選擇要排列的單元格範圍,然後單擊確定。
如果要反轉行,可以使用程式2代替程式1。
程式2 (此處應插入程式程式碼)
Sub Fliphorizontally()
'Updated BY Nirmal
Dim Rng As Range
Dim WorkRng As Range
Dim Arr As Variant
Dim i As Integer, j As Integer, k As Integer
On Error Resume Next
xTitleId = "Reverse the order"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Arr = WorkRng.Formula
For i = 1 To UBound(Arr, 1)
k = UBound(Arr, 2)
For j = 1 To UBound(Arr, 2) / 2
xTemp = Arr(i, j)
Arr(i, j) = Arr(i, k)
Arr(i, k) = xTemp
k = k - 1
Next
Next
WorkRng.Formula = Arr
End Sub
結論
在本教程中,我們使用了一個簡單的示例來演示如何在Excel中反向複製貼上行或列。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP