跳至頁尾內容
EXCEL 工具

如何在 Excel 中鎖定行:您需要知道的一切

Iron Software團隊撰寫


如果您的標題行在翻頁時總是消失,或是同事經常意外覆蓋關鍵資料,您需要鎖定該行。 Excel 提供了兩種不同的方法來做到這一點:凍結行以便在翻頁時保持可見,並保護行以確保內容不被編輯。 本指南將為使用者提供逐步指導,幫助他們開始在 Excel 中鎖定行。 這些方法適用於任何 Excel 試算表,它是 Microsoft Office 套件的一部分。

要在翻頁時保持工作表區域可見,請前往"檢視"選項卡並選擇"凍結窗格"。

讓我們從最快速的方法開始。 *

最快的方法:用一鍵凍結頂部行

如果您只是希望標題行在滾動時保持可見,這是最快的路徑。 凍結頂部行 選項將鎖定您的工作表的第一行。

  1. Excel中打開您的試算表。
  2. 在頂部的功能區中點擊 檢視 選項卡。

  3. 點擊窗口組中的 凍結窗格 按鈕。

  4. 從下拉選單中選擇 凍結頂部行 來鎖定第一行。

就是這樣。 在第 1 行下方會出現一條淺灰色線條,表示第一行已鎖定。 無論您向下滾動到多遠,標題都將保持不動。

若要在 Excel 中鎖定行,前往"檢視"選項卡並點擊"凍結窗格"。

如何在 Excel 中鎖定行:您需要知道的一切:圖片 1 - 檢視選項卡功能區,打開凍結窗格下拉選單

方法1:使用功能區凍結任意行(凍結窗格)

凍結頂部行適用於第 1 行。如果您想鎖定第 3 行、第 5 行或任何其他行,請使用 凍結窗格。 要凍結多行或多列,選擇您希望保持可見的最後一行下方的單元格,然後點擊"凍結窗格"。

如何做到:

  1. 點擊您想要凍結的行 下方 的行。 例如,要鎖定第 1-3 行,請點擊第 4 行的任意位置。如果您想凍結行和列,請選擇您想凍結的最後一行下方和最後一列右側的單元格。 例如,要凍結前兩列,選擇第三列;或者要凍結第一列,選擇 B 列中的單元格。

  2. 進入 檢視 選項卡。

  3. 點擊 凍結窗格
  4. 選擇 凍結窗格(下拉選單中的第一個選項,而非"凍結頂部行")。

凍結列的方法相同:要凍結第一列,選擇 B 列; 要凍結多列,選擇您要凍結的最後一列的右側列,然後點擊"凍結窗格"。 您還可以通過選擇適當的單元格來凍結最後一行或最後一列,這樣可以在滾動時保持其餘資料的可見性。

許多使用者覺得在凍結行和列時難以確定應選擇的單元格。 重要的是要確保在應用凍結窗格之前,選擇好您希望保持可見區域的下方和右側的正確單元格。 這可以幫助避免問題並確保正確應用凍結窗格功能。

Excel 會凍結您選定行上方的所有行和您選定列左側的所有列。 灰色分隔線將顯示在您點擊的位置上方和左側。

若要取消凍結: 請前往 檢視 → 凍結窗格 → 取消凍結窗格。 該選項僅在當前凍結窗格時出現。

如何在 Excel 中鎖定行:您需要知道的一切:圖片 2 - 光標選定的行 4 以及凍結窗格下拉選單

方法2:使用鍵盤快捷鍵凍結行

Excel 使用 Alt 鍵序列到達凍結窗格,讓您完全從鍵盤導航到那裡。 對於尋找快速答案的使用者,以下鍵盤序列提供了一種有效的方式來鎖定 Excel 中的行:

若要凍結頂部行:

依次按下 Alt → W → F → R(逐個按鍵,而非同時按下)。

  • Alt 激活功能區鍵提示。
  • W 打開檢視選項卡。
  • F 打開凍結窗格選單。
  • R 選擇"凍結頂部行"。

這些步驟經過精心設計,旨在有效地引導使用者完成過程。

若要凍結特定行:

首先,使用鍵盤選擇您想凍結的行的下一行(使用箭頭鍵或 Ctrl + G 轉到一個單元格),然後按Alt → W → F → F

若要取消凍結:

再按一次 Alt → W → F → F。 當窗格已凍結時,此選項將切換為"取消凍結窗格"。

方法3:鎖定行以防止編輯(保護工作表)

凍結保持行 可見,但不能防止任何人編輯它。 如果您想防止更改特定行,您需要使用 Excel 的工作表保護功能。 以下資訊基於專家指導以保護 Excel 中的行。 這是兩步驟的過程。

步驟1:首先解鎖所有單元格

預設情況下,Excel 中的每個單元格都被標記為"鎖定",但是此設置僅在啟用工作表保護時生效。 若要只鎖定某些行,您首先需要解鎖所有內容,然後重新鎖定您關心的行。

  1. 按下Ctrl + A選擇所有單元格。

  2. 按下Ctrl + 1打開設定儲存格格式對話框(或右鍵點擊並選擇設定儲存格格式)。

  3. 點擊保護標籤。

  4. 取消選中"已鎖定"复选框。

  5. 點擊確定

如何在 Excel 中鎖定行:您需要知道的一切:圖片 3 - 打開在保護標籤上的設定儲存格格式對話框,取消選中"已鎖定"复选框

步驟2:僅鎖定您想要保護的行

  1. 選擇您要鎖定的行。 點擊左側的行號以選擇整行。 保持Ctrl按下並點擊其他行號以選擇多行。

  2. 再次按下Ctrl + 1以打開格式單元格。

  3. 前往保護標籤。

  4. 勾選"已鎖定"复选框。

  5. 點擊確定

步驟3:開啟工作表保護

  1. 前往功能區中的檢閱標籤。

  2. 點擊保護工作表
  3. 在出現的對話框中,選擇使用者仍可執行的操作(例如,選擇單元格、排序、使用自動篩選)。
  4. 選擇性地輸入密碼以防止他人移除保護。
  5. 點擊確定

現在,任何嘗試編輯鎖定行的人都會看到一個彈出窗口,提示單元格已受保護。

如何在 Excel 中鎖定行:您需要知道的一切:圖片 4 - 保護工作表對話框,帶有密碼字段和允許動作列表

若要取消保護: 前往 檢閱 → 取消保護工作表,若設置了密碼則輸入密碼。 *

方法4:通過右鍵選單鎖定行

您可以不接觸功能區即可到達相同的格式單元格保護設置。

  1. 選擇您要鎖定的行(點擊行號)。
  2. 在選擇上 右鍵點擊

  3. 從上下文選單中選擇格式單元格

  4. 點擊保護標籤。

  5. 根據需要勾選或取消勾選已鎖定

  6. 點擊確定,然後通過 檢閱 → 保護工作表 保護工作表。

如果您已經在使用右鍵選單,並且不想瀏覽功能區,此方法非常方便。

方法5:使用 VBA 宏鎖定行

如果您經常鎖定行或希望跨多個文件自動執行此操作,VBA 宏可以節省時間。此方法適用於熟悉打開 Visual Basic 編輯器的中級使用者。

要打開 VBA 編輯器: 按下 Alt + F11

要以程式方式凍結頂部行:

Sub FreezeTopRow()
    With ActiveWindow
        .FreezePanes = False   ' Clear any existing freeze first
        ActiveSheet.Cells(2, 1).Select
        .FreezePanes = True
    End With
End Sub
Sub FreezeTopRow()
    With ActiveWindow
        .FreezePanes = False   ' Clear any existing freeze first
        ActiveSheet.Cells(2, 1).Select
        .FreezePanes = True
    End With
End Sub
Sub FreezeTopRow()
    With ActiveWindow
        .FreezePanes = False   ' Clear any existing freeze first
        ActiveSheet.Cells(2, 1).Select()
        .FreezePanes = True
    End With
End Sub
$vbLabelText   $csharpLabel

要鎖定行以防止編輯並保護工作表:

Sub LockRowAndProtect()
    Dim ws As Worksheet
    Set ws = ActiveSheet
    ' Step 1: Unlock all cells
    ws.Cells.Locked = False
    ' Step 2: Lock row 1
    ws.Rows(1).Locked = True
    ' Step 3: Protect the sheet (no password in this example)
    ws.Protect Password:="", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Sub LockRowAndProtect()
    Dim ws As Worksheet
    Set ws = ActiveSheet
    ' Step 1: Unlock all cells
    ws.Cells.Locked = False
    ' Step 2: Lock row 1
    ws.Rows(1).Locked = True
    ' Step 3: Protect the sheet (no password in this example)
    ws.Protect Password:="", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Option Strict On



Sub LockRowAndProtect()
    Dim ws As Worksheet
    ws = ActiveSheet
    ' Step 1: Unlock all cells
    ws.Cells.Locked = False
    ' Step 2: Lock row 1
    ws.Rows(1).Locked = True
    ' Step 3: Protect the sheet (no password in this example)
    ws.Protect(Password:="", DrawingObjects:=True, Contents:=True, Scenarios:=True)
End Sub
$vbLabelText   $csharpLabel

要運行宏:按下 Alt + F8,選擇您的宏名稱,然後點擊 運行 *

方法6:同時凍結行和列

您可以通過同時凍結行和列來建立 Excel 中的自訂視圖,這對於大型資料集很有用,您需要標題行和標簽列保持可見。 大家常問的是如何同時鎖定行和列。要做到這一點,請單擊"檢視"選項卡,然後選擇"凍結窗格"以鎖定特定行和列的位置。

  1. 單擊位於您想要凍結的行和列交叉處的單元格。 例如,要凍結第 1 行和第 A 列,請單擊單元格B2

  2. 前往 檢視 → 凍結窗格 → 凍結窗格

現在,第 2 行以上的一切和 B 列左侧的一切都將鎖定在原地。

常見問題及故障排除

"凍結窗格"為灰色

這通常發生在試算表處於頁面佈局視圖或分頁預覽時。 點擊 檢視 → 普通 以切換回普通視圖,然後重試。

凍結線出現在錯誤的位置

您可能選擇了範圍中間的單元格而非邊緣。 點擊您希望凍結線所在的行之下的精確行,然後應用凍結窗格

該行可見但使用者仍然可以編輯它

凍結只影響可視性,不影響可編輯性。 要鎖定編輯,您需要按照上面方法3中的保護工作表步驟進行操作。

保護已開啟但仍然可以編輯已鎖定行

仔細檢查您是否完成了步驟1(解鎖所有單元格)然後重新鎖定只想要的行。 如果所有單元格在保護之前都是鎖定的,設置預設保護所有內容,這聽起來正確,但通常在您嘗試允許特定區域編輯時造成混淆。

忘記了工作表保護密碼

Excel 沒有內建的工作表密碼恢復工具。 有第三方工具可以移除保護,或者對於舊的 .XLS 文件,有時可以通過將工作表的內容複製到新工作簿中來繞過保護。

將文件發送給其他人時,凍結窗格消失

凍結窗格設置保存在 .XLSX 格式文件中。 如果接收者沒有看到凍結,他們可能意外關閉了凍結,或是在一個不支援窗格的查看器中打開了文件。 請請他們檢查 檢視 → 凍結窗格

在 Excel 網上版(瀏覽器版本)中鎖定行

如果您剛開始使用 Excel 網上版,您可以使用凍結窗格來鎖定行。 Excel 網上版支援凍結窗格,點擊 檢視 → 凍結行和列,然後選擇您喜歡的選項。 工作表保護也可在 檢閱 → 保護工作表 下找到,儘管某些高級保護選項僅在桌面應用中可用。

額外提示:分割窗格與凍結窗格

一個經常與凍結窗格混淆的功能是 分割。 位於 檢視 → 分割 下,這將您的 Excel 視窗劃分為獨立的可滾動畫面部分,您可以同時查看同一工作表的不同部分。 與凍結窗格不同,分割不會將行鎖定在固定位置; 它只是分割了視圖。 如果您不小心應用了分割而不是凍結,請再次前往 檢視 → 分割 以取消它。 *

對於開發人員:如何以程式方式使用 IronXL 鎖定行

如果您正在開發生成或處理 Excel 文件的軟體,手動透過使用者介面配置凍結窗格和保護並不適用於大規模運行。 IronXL 是一個 .NET 程式庫,允許您直接在 C# 或 VB.NET 中應用行鎖定、工作表保護和凍結窗格,無需安裝 Excel。

以下是如何在幾行程式碼中凍結頂部行並防止其被編輯的範例:

using IronXL;
WorkBook workBook = WorkBook.Load("report.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Freeze the top row
workSheet.CreateFreezePane(0, 1);
// Lock all cells, then unlock the editable range
workSheet.GetRange("A1:Z1").Style.Locked = true;
workBook.Password = "securePassword";
workBook.SaveAs("report-locked.xlsx");
using IronXL;
WorkBook workBook = WorkBook.Load("report.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Freeze the top row
workSheet.CreateFreezePane(0, 1);
// Lock all cells, then unlock the editable range
workSheet.GetRange("A1:Z1").Style.Locked = true;
workBook.Password = "securePassword";
workBook.SaveAs("report-locked.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("report.xlsx")
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet
' Freeze the top row
workSheet.CreateFreezePane(0, 1)
' Lock all cells, then unlock the editable range
workSheet.GetRange("A1:Z1").Style.Locked = True
workBook.Password = "securePassword"
workBook.SaveAs("report-locked.xlsx")
$vbLabelText   $csharpLabel

IronXL 處理 OpenXML 格式的複雜性,因此您無需自己處理。 這尤其對於需要跨數百個文件一致應用行鎖定的團隊在生成報告、導出或範本時非常有用。 *

摘要:您應該使用哪種方法?

目標 最佳方法
在滾動時保持標題行可見 檢視 → 凍結頂部行
在滾動時保持多行可見 點擊行下方,然後凍結窗格
防止任何人編輯一行 設定儲存格格式 → 鎖定 + 保護工作表
無需觸碰功能區作業 右鍵點擊 → 設定儲存格格式
跨多個文件自動化 VBA宏
程式化文件生成 IronXL(.NET)

在 Excel 中鎖定行歸結於兩個問題:您是想讓它保持可見,還是想讓它_保持不變? 凍結特定行或列保持它們可見,而其餘資料滾動,使處理大型試算表更輕鬆。 凍結標題在滾屏時保持標題可見,有助於資料分析並提高資料輸入的準確性。 凍結窗格回答了第一個問題;保護工作表回答了第二個問題。 結合使用,它們能讓您完全控制您的試算表如何為您和與您共享它的任何人運作。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話