Note: The other languages of the website are Google-translated. Back to English

如何在Excel中以相反的順序複製和粘貼行或列?

有時,您可能需要垂直或水平地以相反的順序複製和粘貼列或行的列表,如下圖所示。 您如何在Excel中快速輕鬆地處理這項工作?

使用公式以相反的順序複製和粘貼列或行的列表

使用VBA代碼以相反的順序複製和粘貼一系列列或行

具有令人敬畏的功能,可以按相反的順序複製和粘貼一系列列或行


使用公式以相反的順序複製和粘貼列或行的列表

垂直以相反的順序複製和粘貼列列表

如果要反轉列單元格列表,則可以應用以下公式:

輸入以下公式或將其複製到要反轉列順序的空白單元格中:

=OFFSET($A$15,-(ROW(A1)-1),0)

備註:在以上公式中, A1 是列中的第一個單元格,並且 A15 是列中的最後一個單元格。

然後,將填充手柄向下拖動到單元格,以相反的順序提取單元格值,如下圖所示:


水平地以相反的順序複製和粘貼行列表

要以相反的順序複製和粘貼行列表,請使用以下公式:

輸入此公式或將其複製到空白單元格中:

=OFFSET($A$1,,COUNTA(1:1)-COLUMN(A1),)

備註:在以上公式中, A1 是該行中的第一個單元格,並且 1:1 是您的數據所在的行號。 如果數據在第10行,則應將其更改為10:10。

然後,將填充手柄向右拖動到要應用此公式的單元格上,直到提取了所有值,然後將所有值水平反轉,請參見屏幕截圖:


使用VBA代碼以相反的順序複製和粘貼一系列列或行

如果您需要以相反的順序複製和粘貼一系列列或行,在這裡,我將介紹一些VBA代碼以快速輕鬆地解決它。 請執行以下步驟:

垂直以相反的順序複製和粘貼列列表

1。 首先,您應該將數據複製並粘貼到新位置,然後按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2。 點擊 插入 > 模塊,然後將以下代碼粘貼到 模塊 窗口。

VBA代碼:垂直以相反順序複製和粘貼一系列單元格

Sub Flipvertically()
'updateby Extendoffice
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 = "KutoolsforExcel"
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

3。 然後按 F5 鍵運行此代碼,並彈出一個提示框,提醒您選擇要垂直反轉的數據范圍,請參見屏幕截圖:

4。 然後,單擊 OK 按鈕,並且數據范圍已垂直反轉,如下圖所示:


水平地以相反順序複製和粘貼一系列單元格

要按水平順序反轉數據范圍,請應用以下VBA代碼:

VBA代碼:以相反的順序水平復制和粘貼一系列單元格

Sub Fliphorizontally()
'updateby Extendoffice
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 = "KutoolsforExcel"
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

運行此代碼後,您將根據需要獲得以下屏幕截圖:


具有令人敬畏的功能,可以按相反的順序複製和粘貼一系列列或行

如果您不熟悉上述公式和VBA代碼,請在這裡推荐一個簡單的工具-Excel的Kutools,其 翻轉垂直範圍翻轉水平範圍 功能,只需單擊一下即可在垂直和水平方向上反轉單元格的範圍。

提示:要應用此 翻轉垂直範圍 翻轉水平範圍 功能,首先,您應該下載 Excel的Kutools,然後快速輕鬆地應用該功能。

安裝後 Excel的Kutools,請這樣做:

水平地以相反順序複製和粘貼一系列單元格

1。 選擇單元格的範圍,然後單擊 庫工具 > 範圍 > 翻轉垂直範圍 > 全部(僅翻轉值),請參見屏幕截圖:

2。 然後,單元格值的範圍立即被垂直反轉,請參見屏幕截圖:


水平地以相反順序複製和粘貼一系列單元格

1。 選擇單元格的範圍,然後單擊 庫工具 > 範圍 > 翻轉水平範圍 > 全部(僅翻轉值),請參見屏幕截圖:

2。 然後,所選內容中的所有單元格值都立即立即水平反轉,請參見屏幕截圖:

點擊下載Kutools for Excel並立即免費試用!


更多相關的複制和粘貼文章:

  • 將合併的單元格複製並粘貼到Excel中的單個單元格中
  • 通常,當您複製合併的單元格並將其粘貼到其他單元格中時,將直接粘貼合併的單元格。 但是,您希望將這些合併的單元格粘貼到單個單元格,如下面的屏幕快照所示,以便您可以根據需要處理數據。 在本文中,我將討論如何將合併的單元格複製並粘貼到單個單元格中。
  • 複製列並僅粘貼Excel中的唯一記錄
  • 對於具有大量重複項的列,您可能需要獲取僅具有唯一值的此列表的副本。 您如何才能做到這一點? 在本文中,我們提供兩種方法來僅粘貼Excel中列列表中的唯一記錄。
  • 從受保護的工作表中復制數據
  • 假設您從另一個人那裡收到一個Excel文件,該文件的工作表受用戶保護,現在,您要將原始數據複製並粘貼到另一個新工作簿中。 但是,由於用戶在保護工作表時取消選中“選擇鎖定的單元格”和“選擇解鎖的單元格”選項,因此無法選擇和復制受保護工作表中的數據。
  • 使用Excel中的高級篩選器將數據複製到另一個工作表
  • 通常,我們可以快速應用“高級篩選器”功能從同一工作表中的原始數據中提取數據。 但是,有時,當您嘗試將篩選的結果復製到另一個工作表時,會收到以下警告消息。 在這種情況下,您如何在Excel中處理此任務?

  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 和保存數據; 拆分單元格內容; 合併重複的行和總和/平均值...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 收藏并快速插入公式,範圍,圖表和圖片; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 數據透視表分組依據 週號,週幾等 顯示未鎖定的單元格 用不同的顏色 突出顯示具有公式/名稱的單元格...
kte選項卡201905
  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (3)
5中的5評分 · 1評級
網站主持人對此評論進行了最小化
我 funcionó la opción del código VBA。 非常感謝!
網站主持人對此評論進行了最小化
當數據不在第一行或第一列。
這些功能似乎效果更好:

鏡像行:
假設數據位於 G11:K11
OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:G11),) ........ OFFSET($G$11,,COUNTA(11:11)-COUNTA($G$11:K11),)

鏡像欄:
假設數據位於 E22:E26
OFFSET($E$22,ROW($E$26)-ROW(E22),0) ........ OFFSET($E$22,ROW($E$26)-ROW(E26),0)
5中的5評分
網站主持人對此評論進行了最小化
你好納斯林,

你好嗎。 我試過你的公式,它們工作得很好。 謝謝你的分享。 我們會聽取您的建議。 祝你有美好的一天。

此致,
曼迪
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

版權所有©2009 - 萬維網。extendoffice.com。 | 版權所有。 供電 ExtendOffice。 |
Microsoft和Office徽標是Microsoft Corporation在美國和/或其他國家的商標或註冊商標。
受Sectigo SSL保護