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

Excel中值更改時如何插入空白行?

假設您具有一定範圍的數據,現在您想在值更改時在數據之間插入空白行,以便可以將一列中的順序相同值分開,如下面的屏幕截圖所示。 在本文中,我將為您解決一些技巧。

使用小計功能更改值時插入空白行

值隨輔助列更改時插入空白行

使用VBA代碼更改值時插入空白行

功能強大的值更改時,插入特定數量的空白行


使用小計功能更改值時插入空白行

隨著 總計 功能,您可以按以下步驟在值更改時在數據之間插入空白行:

1。 選擇您要使用的數據范圍。

2。 點擊 數據 > 總計 打開 總計 對話框,然後在 總計 對話框,請執行以下選擇:

1:根據值何時在以下更改,選擇要插入空白行的列名 每次變化 在部分;
2:選擇 計數 來自 使用功能 下拉列表;
3:檢查要在其中插入小計的列名 添加到小計 列錶框

3。 然後點擊 OK,小計線已插入到不同產品之間,並且大綱符號顯示在表的左側,請參見屏幕截圖:

4。 然後單擊輪廓符號頂部的數字2,僅顯示小計線。

5。 然後選擇小計範圍數據,然後按 Alt +; 快捷鍵僅選擇可見行,請參見屏幕截圖:

6。 僅選擇可見行後,然後按 刪除 鍵,所有小計行都已刪除。

7。 然後單擊任何其他單元格,然後返回 數據 > 取消組合 > 清除輪廓 刪除大綱,請參見屏幕截圖:

8。 輪廓符號立即被清除,當值更改時,您可以看到在數據之間插入了空白行,請參見屏幕截圖:

9。 最後,您可以根據需要刪除列A。


值快速變化時插入分頁符,空白行,底部邊框或填充顏色

如果你有 Excel的Kutools's 區分差異 功能,您可以根據需要更改值時快速插入分頁符,空白行,底部邊框或填充顏色。 請參見下面的演示。         點擊下載Kutools for Excel!


值隨輔助列更改時插入空白行

使用幫助器列,您可以先插入公式,然後再應用 查找和替換 函數,最後,在變化的值之間插入空白行。 請執行以下操作:

1。 在空白單元格C3中,請輸入此公式 = A3 = A2,然後在單元格D4中輸入此公式 = A4 = A3,請參見屏幕截圖:

2。 然後選擇C3:D4,並將填充手柄拖到您要應用這些公式的範圍內,您將獲得 or 在單元格中,請參見屏幕截圖:

3。 然後按 Ctrl + F 鍵打開 查找和替換 對話框,在彈出的對話框中,輸入 查找內容 下的文字框 發現 選項卡,然後單擊 選項 按鈕以展開此對話框,然後選擇 價值觀 來自 在看 下拉列表,請參見屏幕截圖:

4. 點擊 找到所有 按鈕,然後按 按Ctrl + A 要選擇所有查找結果,請一次選擇所有FALSE單元,請參見屏幕截圖:

6。 關上 查找和替換 對話框,下一步,您可以通過單擊插入空白行 首頁 > 插入 > 插入圖紙行,並且當值基於A列更改時,空白行已插入到數據中,請參見屏幕截圖:

7。 最後,您可以根據需要刪除幫助程序列C和D。


使用VBA代碼更改值時插入空白行

如果您厭倦了使用上述方法,下面的代碼也可以幫助您立即在更改後的值之間插入空白行。

1。 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications窗口.

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

VBA代碼:值更改時插入空白行

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

3。 然後按 F5 鍵以運行此代碼,然後會彈出一個提示框,讓您選擇要在基於值更改時插入空白行的一列數據,請參見屏幕截圖:

4。 然後點擊 OK,當值基於列A更改時,在數據之間插入了空白行。


功能強大的值更改時,插入特定數量的空白行

如果您嘗試使用上述麻煩的方法,在這裡,我將介紹一個有用的工具, Excel的Kutools's 區分差異 可以幫助您在單元格值快速而輕鬆地更改時插入分頁符,空白行,底部邊框或填充顏色。

提示:要應用此 區分差異 功能,首先,您應該下載 Excel的Kutools,然後快速輕鬆地應用該功能。

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

1。 點擊 庫工具 > 格式 > 區分差異,請參見屏幕截圖:

2。 在 按關鍵列區分差異 對話框,請執行以下操作:

  • 選擇要使用的數據范圍,然後選擇要基於其插入空白行的鍵列;
  • 然後檢查 空白行 選項從 選項 部分,然後輸入要插入的空白行數。

3。 然後點擊 Ok 按鈕,並且如果單元格值發生更改,則將特定數量的空白行插入到數據中,請參見屏幕截圖:

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


最佳辦公效率工具

Kutools for Excel 解決了你的大部分問題,並將你的生產力提高了 80%

  • 重用: 快速插入 複雜的公式,圖表 以及您以前使用過的任何東西; 加密單元 帶密碼 創建郵件列表 並發送電子郵件...
  • 超級公式欄 (輕鬆編輯多行文本和公式); 閱讀版式 (輕鬆讀取和編輯大量單元格); 粘貼到過濾範圍...
  • 合併單元格/行/列 不會丟失數據; 拆分單元格內容; 合併重複的行/列...防止細胞重複; 比較範圍...
  • 選擇重複或唯一 行; 選擇空白行 (所有單元格都是空的); 超級查找和模糊查找 在許多工作簿中; 隨機選擇...
  • 確切的副本 多個單元格,無需更改公式參考; 自動創建參考 到多張紙; 插入項目符號,複選框等...
  • 提取文字,添加文本,按位置刪除, 刪除空間; 創建和打印分頁小計; 在單元格內容和註釋之間轉換...
  • 超級濾鏡 (將過濾方案保存並應用於其他工作表); 高級排序 按月/週/日,頻率及更多; 特殊過濾器 用粗體,斜體...
  • 結合工作簿和工作表; 根據關鍵列合併表; 將數據分割成多個工作表; 批量轉換xls,xlsx和PDF...
  • 超過 300 項強大的功能. 支持 Office / Excel 2007-2021 和 365。支持所有語言。 在您的企業或組織中輕鬆部署。 完整功能 30 天免費試用。 60 天退款保證。
kte選項卡201905

Office選項卡為Office帶來了選項卡式界面,使您的工作更加輕鬆

  • 在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
  • 在同一窗口的新選項卡中而不是在新窗口中打開並創建多個文檔。
  • 將您的工作效率提高 50%,每天為您減少數百次鼠標點擊!
officetab底部
按評論排序
留言 (16)
還沒有評分。 成為第一位評論!
網站主持人對此評論進行了最小化
我有一列數字為 5,4,3,2 和 1(其中很多),我想將五號與其他五號分開,例如:5 5 5 4 3 2 1 5 5 5 5 5 4 3 2 1數字按 desc 順序排列,總有 20140716 低於 8,所以我嘗試: Sub InsertRowsAtValueChange() 'Update 2 Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection將 WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=1) Application.ScreenUpdating = False For i = WorkRng.Rows.Count 設置為 1 Step -5 If WorkRng.Cells(i, 1)。 Value = 1 And WorkRng.Cells(i - 4, 1).Value = XNUMX Then WorkRng.Cells(i, XNUMX).EntireRow.Insert End If Next Application.ScreenUpdating = True End Sub 但它不起作用。 你能幫助我嗎?
網站主持人對此評論進行了最小化
該公式效果很好,但是有一些示例無法識別
網站主持人對此評論進行了最小化
非常感謝,到處找,這是唯一對我有用的解決方案,也是簡單的英語。 所有其他 Excel 教程網站都沒有像你那樣一步一步地分解它,非常感謝。 歡呼:)
網站主持人對此評論進行了最小化
非常感謝您描述該問題的多種解決方案。 我使用了 Visual Basic 並將 [quote]WorkRng.Cells(i, 1).EntireRow.Insert[/quote] 更改為 [quote]With WorkRng.Cells(i, 1).EntireRow.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlMedium End With[/quote] 這將在具有變化值的行之間繪製線條,而不是空行。
網站主持人對此評論進行了最小化
在代碼中我需要修改以包含多行的地方,我需要在每次中斷後添加 10...謝謝
網站主持人對此評論進行了最小化
大家好,謝謝!! 太棒了,你們也可以讓我在VBA或通過excel中值更改時如何插入2行。
網站主持人對此評論進行了最小化
你好,這些幾乎是有用的! 第一種方法對我不起作用,因為當我明確遵循這些步驟時,我在小計窗格中刪除的數據會刪除我已排序的整個列。 在第二種方法中,當我進入插入工作表行的步驟時,這些行被插入到 FALSE 單元格的上方,這會分解數據,但是每個組的最後一個選擇會被添加到下面的組中。 有什麼建議???
網站主持人對此評論進行了最小化
[quote]大家好,謝謝!! 太棒了,你們也可以讓我在VBA或通過excel中值更改時如何插入2行。由哈德森[/quote] 請告訴我如何插入多於 1 行。
網站主持人對此評論進行了最小化
一段時間以來,我一直在使用自己的解決方案。
1.在A列中插入一個輔助列
2. 在 A2 中,輸入“if(B2=B1,A1,A1+1)”
3.將該公式複製到最後一行
4.複製A列中所有填充的單元格並在它們上面粘貼特殊(值)
5. 再次復制所有單元格並將它們粘貼到第一個未填充單元格的 A 列中(例如,如果您有 104 行數據加上標題行,您將粘貼到單元格 A106)
6. 單擊數據並刪除重複項(僅在您剛剛在步驟 5 中粘貼的單元格上;不是在所有行上)
7.對A列全部排序
8.刪除A列

似乎有很多步驟,但只需要幾秒鐘。
網站主持人對此評論進行了最小化
VBA 代碼第一次工作,並且完全按照我想要做的。 非常感謝!
網站主持人對此評論進行了最小化
RE:當值隨 vba 代碼更改時插入空白行
有沒有一種方法可以保存 Range 而不必每次運行時都選擇它?
網站主持人對此評論進行了最小化
你好,
在我需要插入 1 行的情況下非常有用,但是如果我需要在每次 spwcific 列中的數據更改時插入 145 行,我該怎麼做?
網站主持人對此評論進行了最小化
嗨,哈桑,
要在特定列中的值更改時插入多個空白行,您應該應用以下 VBA 代碼:

注意:在下面的代碼中,你應該把數字99改成你需要的,例如插入145個空白行時,你應該把數字99改成144。請試一試,希望對你有幫助!

子 InsertRowsAtValueChange()
昏暗範圍
將 WorkRng 調暗為範圍
在錯誤恢復下一頁
xTitleId = "KutoolsforExcel"
設置 WorkRng = Application.Selection
設置 WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
對於 i = WorkRng.Rows.Count 到 2 步 -1
如果 WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value 然後
範圍 (WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Insert
如果結束
下一頁
Application.ScreenUpdating = True
END SUB
網站主持人對此評論進行了最小化
很有幫助。 skyyang 上面顯示的代碼運行良好。 只要確保數據中沒有空格即可。

我不懂VBA,但我相信如果你想在已經有間距的數據下面添加更多行,應該有一種方法可以忽略空格。

可以添加一行以忽略或跳過空白行嗎? 如果需要,這可能會使此代碼更加通用和可重複。 與此類似的刪除功能也可能很有用,因此不需要撤消。
網站主持人對此評論進行了最小化
可以調整 VBA 方法以忽略空白單元格嗎? 我有一個文件,我需要根據兩個不同的列在其中插入行,但是當我在第二列上運行宏時,我最終得到三個空白行,第一個宏運行插入的行。
或者它可以同時在兩列上運行嗎?
網站主持人對此評論進行了最小化
嗨,哈桑,

這個 vba 很棒,而我還需要一個備用代碼來在序號更改後插入單個空白行。 示例:- 在具有 1、2、3、5、6、9 等數字系列的列中...
需要在 3 和 5 以及 6 和 9 之間添加單個空行。
請你能用這個嗎?
這裡還沒有評論
留下你的意見
以訪客身份發帖
×
評價此帖子:
0   字符
推薦地點

關注我們

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