如何在 LibreOffice 中停用遙測和資料收集
了解如何停用 LibreOffice 崩潰報告、線上更新用戶代理程式資料和可選的自動更新檢查,以及如何驗證設定。
清理電子表格是一項重複性工作:導出的名稱會帶有多餘的空格,貼上的文字包含不間斷空格,而且大範圍替換可能會損壞公式或 ID。 ONLYOFFICE 巨集可以規範指定範圍內的文本,同時保留數值和公式單元格不變。以下範例僅處理空格;重複項目刪除、日期轉換和空白行刪除需要單獨的規則。
文件已於 2026 年 10 月 6 日審核。 ONLYOFFICE巨集使用 Office JavaScript API 來撰寫 JavaScript 程式碼,而非 Excel VBA。編輯器的目前文件中,巨集工作區位於「檢視」→「巨集」功能表下。桌面版和主機版的工具列外觀可能略有不同。
此範例會移除文字開頭和結尾的空格或製表符,將不間斷空格替換為普通空格,並合併文字中重複出現的空格或製表符。它會跳過公式和非字串類型的值。這種精簡的操作範圍可以降低在準備定期匯入時變更日期、金額或計算儲存格的可能性。
| 數據問題 | 樣本的作用 | 自動化前先進行審核 |
|---|---|---|
| 前導空格或尾隨空格和製表符 | 從文字儲存格中移除它們 | 通常情況下,名稱和標籤使用空格是安全的,但請檢查空格有意義的欄位。 |
| 不間斷空間 | 用普通空格替換它們 | 適用於複製的網頁文字;請抽查原始碼字段 |
| 重複的空格或製表符 | 將每次運行合併到一個空間中 | 請勿用於固定寬度文字或有意縮排的文字。 |
| 公式、數字和布林值 | 使它們保持不變 | 運行後驗證公式單元格是否仍然能夠計算。 |
| 重複行、日期、空白行 | 不會改變它們 | 首先定義業務規則;這些並非純粹的表面清理工作。 |
在執行任何會變更儲存格的巨集之前,請先儲存電子表格的工作副本。確定要清理的工作表和資料行。以下程式碼A2:D500提供了一個範例區域:假設第 1 行包含標題,資料位於 A 列到 D 列。請將此地址變更為與您的工作表相符。使用包含目標記錄的有界區域,並且不要包含註解、公式或無關列。

首先進行測試,將一些代表性的記錄複製到臨時工作表中,或複製檔案並縮短範圍,例如A2:D10。包含普通空格、貼上文字、空白儲存格和公式的範例,以便確認巨集如何處理每種情況。
在 ONLYOFFICE 電子表格編輯器中開啟電子表格,然後選擇「檢視」→「巨集」。在巨集視窗中建立新巨集,或選擇新模組,然後為其指定一個清晰的名稱,例如「巨集CleanTextWhitespace」。 ONLYOFFICE 官方巨集入門指南詳細介紹了此入口點和運行控制項。

如果您的編輯器設定停用了巨集,請查看「設定」→「進階設定」→「巨集」。 ONLYOFFICE 文件提供了停用巨集、顯示通知或啟用巨集的選項。對於非您建立的工作簿,請勿為了執行一個腳本而全域啟用所有巨集;請檢查程式碼並遵循您所在組織的策略。
將程式碼貼到巨集編輯器中。A2:D500運行前請進行修改。此處使用的範圍方法已在工作表 GetRange 參考、範圍 GetCells 參考以及GetFormula、GetValue和SetValue的 API 頁面中進行了說明。
(function () {
var oSheet = Api.GetActiveSheet();
var oRange = oSheet.GetRange("A2:D500");
var nRows = oRange.GetRowsCount();
var nCols = oRange.GetColumnsCount();
for (var r = 1; r <= nRows; r++) {
for (var c = 1; c <= nCols; c++) {
var oCell = oRange.GetCells(r, c);
var sFormula = oCell.GetFormula();
// Do not replace formulas with their displayed results.
if (sFormula) {
continue;
}
var v = oCell.GetValue();
// Restrict this cleanup to text constants.
if (typeof v !== "string") {
continue;
}
var sClean = v
.replace(/\u00A0/g, " ")
.replace(/[ \t]+/g, " ")
.replace(/^[ \t]+|[ \t]+$/g, "");
// SetValue treats strings beginning with "=" as formulas.
if (sClean.charAt(0) === "=") {
continue;
}
if (sClean !== v) {
oCell.SetValue(sClean);
}
}
}
})();

傳遞給巨集的行和列計數器GetCells是相對於選取範圍的;API 範例使用編號位置來存取儲存格。巨集首先讀取每個單元格的公式,如果存在公式則跳過。然後讀取值,並僅編輯實際更改的字串。如果字串在修剪後會變成等號公式,也會被跳過,因為巨集SetValue可以將前導等號解釋為公式。
空格表達式會有意保留換行符。它不會更改大小寫、標點符號、數值或日期序號。如果您的來源資料包含多行註釋、固定寬度欄位或帶有特殊空格的標識符,請單獨測試這些列並調整策略,而不是應用更廣泛的規範化。
從巨集編輯器運行巨集。由於它會更新所選區域中的儲存格,因此在覆蓋來源檔案之前,請檢查工作副本中已變更的文字。將幾行與原始資料進行比較,包括區域中的第一行和最後一行。確認標題保持不變,公式仍然可以計算,並且日期、貨幣和 ID 等數值單元格沒有更改。

對於大型工作表,請在運行前後篩選或搜尋可疑空格,並比較行數。該巨集不會刪除行、去重記錄、轉換日期或填入空白,因此這些檢查應專注於文字值。如果您需要可見的審計跟踪,請新增單獨的審核列或將清理後的結果複製到暫存工作表中,而不是將狀態訊息寫入任意儲存格。
03/04/2026在不同地區可能存在歧義。00127文字)時,如果電子表格已將其儲存為數字,則修剪文字無法恢復缺少的零。當可以精確表達可重複使用的規則,並且可以在副本上進行測試時,請使用 ONLYOFFICE 巨集。巨集系統採用 JavaScript 而非 VBA,附加到文件而非全域可用,並且限制了對文件系統和網路的直接訪問,詳情請參閱ONLYOFFICE 巨集常見問題解答。這種沙盒機制限制了巨集在編輯器之外的存取權限,但巨集仍然可以更改工作簿內容,因此請在運行程式碼之前進行審查和測試。
對於重複匯入,請將腳本儲存在受控範本或文件副本中,並使用簡短的檢查清單:確認活動工作表、更新範圍地址、排除標題和公式、在副本上執行、抽查編輯的字串,並在儲存或共用之前將最終工作簿與原始工作簿進行比較。
了解如何停用 LibreOffice 崩潰報告、線上更新用戶代理程式資料和可選的自動更新檢查,以及如何驗證設定。
Install ONLYOFFICE Docs Enterprise with the official Docker Compose file, configure JWT and persistent storage, add your license, and verify the service.
學習如何在 LibreOffice 尋找和替換中使用正規表示式來清理文字、擷取和重新排序資料、控制範圍以及選擇更安全的替代方案。
建立一個安全的 ONLYOFFICE JavaScript 巨集,用於清理電子表格文字、保留公式和數字,並在儲存工作簿之前驗證每次變更。
使用官方的配置指南和可重複的測試,比較 Collabora Online 和 ONLYOFFICE Docs 的 CPU、記憶體、開啟時間、協同編輯延遲和保存次數。
在 Docker 中為 Collabora Online CODE 新增自訂字體,比較綁定掛載、自訂映像檔和遠端字體配置,然後驗證文件中的字體。
追蹤 Collabora Online 字體大小下拉選單顯示不完整、拉伸或無回應的問題。重置頁面縮放,手動輸入字體大小,並檢查程式碼版本修復程式。
要解決 LibreOffice JRE 警告,請確定是否需要 Java 功能,安裝相容的執行時間環境,並在進階選項中選擇它。
將 ONLYOFFICE Docs 連接到自訂 PHP 應用程序,並具有安全的文件 URL、已簽署的編輯器配置、JavaScript API 和保存回調。
為 Linux 軟體套件或 CODE Docker 部署設定 Collabora Online 管理控制台密碼,然後驗證登入並保護管理端點。