如何在Excel中根據單元格值自動插入行?
讓我們假設我們遇到一種情況,需要在指定值的上方或下方插入一行。Excel 預設情況下無法完成此操作,因此我們將藉助 VBA 應用程式來完成此過程。閱讀本教程,瞭解如何根據單元格值在 Excel 中自動插入行。如果嘗試手動完成此任務,則可能非常耗時,因為插入新行是一個多步驟的過程。
根據單元格值在Excel中自動插入行
在這裡,我們將首先插入一個 VBA 模組,然後執行程式碼來完成任務。讓我們來看一個簡單的過程,瞭解如何根據 Excel 中的單元格值在下方插入一行。
步驟 1
讓我們考慮一個 Excel 表格,其中資料類似於下圖所示的資料。
現在右鍵單擊工作表名稱並選擇“檢視程式碼”以開啟 VBA 應用程式,然後單擊“插入”並選擇“模組”,然後將程式鍵入文字框中,如下圖所示。
示例
Sub BlankLine() 'Updated by Nirmal Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "Enter the value" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Set WorkRng = WorkRng.Columns(1) xLastRow = WorkRng.Rows.Count Application.ScreenUpdating = False For xRowIndex = xLastRow To 1 Step -1 Set Rng = WorkRng.Range("A" & xRowIndex) If Rng.Value = "10000" Then Rng.Offset(1, 0).EntireRow.Insert Shift:=xlDown End If Next Application.ScreenUpdating = True End Sub
在程式碼中,10000 是您要插入單元格的值。
步驟 2
將工作表另存為啟用宏的工作表,然後按 F5 鍵執行程式碼。將出現一個彈出視窗;選擇應應用程式碼的範圍,我們的最終輸出將類似於下圖中的資料。
我們可以看到,新行已插入到下方。要在單元格上方插入行,請使用以下程式碼:
示例
Sub BlankLine() 'Update by Nirmal Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "Enter the range" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type: = 8) Set WorkRng = WorkRng.Columns(1) xLastRow = WorkRng.Rows.Count Application.ScreenUpdating = False For xRowIndex = xLastRow To 1 Step - 1 Set Rng = WorkRng.Range("A" & xRowIndex) If Rng.Value = "0" Then Rng.EntireRow.Insert Shift: = xlDown End If Next Application.ScreenUpdating = True End Sub
結論
在本教程中,我們使用了一個簡單的示例來演示如何在 Excel 中根據單元格值插入行。
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP