소스 정보
- 저장소
- claude-office-skills/claude-office-plugin
- 최근 소스 활동
- 2026년 3월 9일 03:20
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 9
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/claude-office-skills/claude-office-plugin --skill wps-core-api명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | wps-core-api |
| description | WPS ET API 核心参考 — 全局变量、Range 读写、格式化、工作表操作、禁用 API |
| version | 2.0.0 |
| tags | ["wps","api","range","format","core"] |
| modes | ["agent","plan"] |
| context | {"always":true} |
| metadata | {"wps":{"minVersion":"6.0"}} |
Application / app:WPS 应用对象ActiveWorkbook(wb):当前工作簿ActiveSheet(ws):当前活动工作表Selection:当前选区function CL(c){var s="";while(c>0){c--;s=String.fromCharCode(65+(c%26))+s;c=Math.floor(c/26);}return s;}
function _n(v){return (v===null||v===undefined||isNaN(v))?0:Number(v);}
function toM(v){return _n(v)/1e6;}
ws.Range("A1").Value2 = "文本";
ws.Range("A1:C3").Value2 = [["a","b","c"],["d","e","f"]];
var vals = ws.Range("A1:C3").Value2;
ws.Range(CL(col)+row).Value2 = 123;
ws.Range("A1").Formula = "=SUM(B1:B10)";
ws.Range("A1:Z100").ClearContents();
ws.Range("A1:Z100").ClearFormats();
ws.Range("A1:Z100").Clear();
// End() 方向必须用数字:4=xlDown, 3=xlUp, 2=xlRight, 1=xlLeft
var lastRow = ws.Range("A1").End(4).Row;
var lastRow = ws.Range("A65536").End(3).Row;
var used = ws.UsedRange;
var lastRow = used.Row + used.Rows.Count - 1;
ws.Range("A1").Offset(1, 0).Value2 = "A2";
var r = ws.Range("A1").Resize(10, 5);
var dataRange = ws.Range("A1").CurrentRegion;
range.Font.Bold = true;
range.Font.Size = 14;
range.Font.Color = 0xFFFFFF; // BGR 格式
range.Font.Name = "微软雅黑";
range.Font.Italic = true;
range.Interior.Color = 0x8B4513;
range.HorizontalAlignment = -4108; // -4108=居中, -4131=左, -4152=右
range.VerticalAlignment = -4108;
range.WrapText = true;
range.ShrinkToFit = true;
range.Orientation = 90; // 文字旋转角度
range.IndentLevel = 2;
range.NumberFormat = "#,##0.00";
range.NumberFormat = "0.00%";
range.NumberFormat = "yyyy-mm-dd";
range.NumberFormat = "#,##0.0,,"M""; // 百万M
range.Locked = false; // 配合工作表保护
ws.Range("A:A").ColumnWidth = 15;
ws.Range("1:1").RowHeight = 30;
ws.Range("A1:P1").Merge();
ws.Range("A1:P1").UnMerge();
ws.Range("5:5").Insert();
ws.Range("5:5").Delete();
ws.Range("3:5").Hidden = true;
ws.Range("A:C").Hidden = true;
// 按 B 列升序(1=升序/xlAscending, 2=降序; Header 1=xlYes有表头)
ws.Range("A1:E100").Sort(ws.Range("B1"), 1, null, null, null, null, null, 1);
// 多列排序:B升序再C降序
ws.Range("A1:E100").Sort(ws.Range("B1"), 1, ws.Range("C1"), null, 2, null, null, 1);
var found = ws.Range("A:A").Find("目标值");
if (found) { var row = found.Row; }
ws.Range("A1:Z100").Replace("旧值", "新值");
ws.Range("A1:C10").Copy(ws.Range("E1"));
ws.Range("A1:A2").AutoFill(ws.Range("A1:A20"));
ws.Range("A1:E1").FillDown();
ws.Range("J4:J100").Validation.Add(3, 1, 1, "选项A,选项B,选项C");
range.FormatConditions.Delete();
var fc = range.FormatConditions.Add(1, 5, 0); // 1=xlCellValue, 5=xlGreater
fc.Interior.Color = 0x00AA00;
fc.Font.Color = 0xFFFFFF;
ws.Range("5:10").Group();
ws.Range("B:D").Group();
ws.Range("5:10").Ungroup();
ws.Outline.ShowLevels(1); // 折叠到第1级
ws.Outline.ShowLevels(2);
ws.Range("A1:A10").AutoFilter();
ws.Range("A1").AutoFilter(2, ">1000");
ws.ShowAllData();
ws.Range("A1:E100").RemoveDuplicates([1, 2], 1);
// 创建(WPS 特殊:Add() 返回 null,必须用 ActiveSheet)
wb.Sheets.Add();
var ws = wb.ActiveSheet;
ws.Name = "新工作表";
// 访问(必须用 .Item())
var ws = wb.Sheets.Item("Sheet1");
var ws = wb.Sheets.Item(1);
var count = wb.Sheets.Count;
// 属性
ws.Visible = false;
ws.Tab.Color = 0x0055D9; // 标签颜色 BGR
ws.Activate();
// 复制/移动/删除
ws.Copy(null, wb.Sheets.Item(wb.Sheets.Count));
Application.DisplayAlerts = false;
ws.Delete();
Application.DisplayAlerts = true;
// 保护
ws.Protect("密码");
ws.Unprotect("密码");
// 命名区域
wb.Names.Add("收入", "=财务!:");
ws.Names.Add(, ws.());
// 必须用 Shapes.AddChart2(ChartObjects.Add 不可用)
// 类型:57=折线, 51=簇状柱形, 5=面积, 65=饼图
var shape = ws.Shapes.AddChart2(0, 57, left, top, width, height);
var chart = shape.Chart;
chart.HasTitle = true;
chart.ChartTitle.Text = "标题";
chart.SetSourceData(ws.Range("A1:C20"));
var s = chart.SeriesCollection.Item(1);
s.Name = "系列名";
s.XValues = ws.Range("A2:A20");
s.Values = ws.Range("B2:B20");
// 大批量操作前必须关闭,操作后必须恢复
Application.ScreenUpdating = false;
Application.DisplayAlerts = false;
// ... 操作 ...
Application.ScreenUpdating = true;
Application.DisplayAlerts = true;
// 内置工作表函数
Application.WorksheetFunction.Sum(ws.Range("B2:B100"));
Application.WorksheetFunction.Average(ws.Range("B2:B100"));
Application.WorksheetFunction.VLookup("key", ws.Range("A:B"), 2, false);
Application.WorksheetFunction.Max(ws.Range("C:C"));
Application.WorksheetFunction.CountIf(ws.Range("A:A"), ">0");
// 合并不连续区域
var union = Application.Union(ws.Range("A1:A10"), ws.Range("C1:C10"));
union.. = ;
| 用途 | BGR 值 | RGB 等价 |
|---|---|---|
| 深蓝表头/品牌色 | 0x8B4513 | #13458B |
| 鲜明蓝(图表主色) | 0xFF4500 | #0045FF |
| 橙色强调 | 0x0055D9 | #D95500 |
| 金橙色(图表柱状) | 0xE8A040 | #40A0E8 |
| 浅灰背景 | 0xF0F0F0 | #F0F0F0 |
| 浅蓝交替行 | 0xFFF0E0 | #E0F0FF |
| 白色 | 0xFFFFFF | #FFFFFF |
| 黑色 | 0x000000 | #000000 |
| 红色(跌/警告) | 0x0000FF | #FF0000 |
| 绿色(涨/完成) | 0x00AA00 | #00AA00 |
| 橙黄(进行中) | 0x00AAFF | #FFAA00 |
| 蓝色(信息) | 0xFF8800 | #0088FF |
| 禁用写法 | 原因 | 正确替代 |
|---|---|---|
ws = wb.Sheets.Add() | 返回 null | wb.Sheets.Add(); ws = Application.ActiveSheet; |
ws.Cells(row, col) | VBA 语法不可用 | ws.Cells.Item(row, col) 或 ws.Range(CL(col)+row) |
ws.Rows(n) | VBA 语法不可用 | ws.Range("n:n") |
ws.Columns("A") | VBA 语法不可用 | ws.Range("A:A") |
ws.Columns("A").AutoFit() | 不可用 | 手动设 ColumnWidth |
ws.ListObjects | 不可用 | 普通 Range 模拟 |
ws.ChartObjects.Add() | 不可用 | ws.Shapes.AddChart2() |
.Borders / .BorderAround() | 直接崩溃 | 用背景色区分区域 |
wb.Sheets("名称") | 括号形式不可用 | wb.Sheets.Item("名称") |
chart.SeriesCollection(n) | 集合括号访问不可用 | chart.SeriesCollection.Item(n) |
Worksheets(1) | 集合括号访问不可用 | Worksheets.Item(1) |
End(xlDown) 字面量 | 枚举不可用 | 用数字:4=下,3=上,2=右,1=左 |
ActiveSheet(无前缀) | 全局变量不稳定 | Application.ActiveSheet |
ActiveWorkbook(无前缀) | 全局变量不稳定 | Application.ActiveWorkbook |
Range("A1").Value | 写入不可用 | 写入用 .Value2,读取用 .Value() 或 .Value2 |
[A1] = 5 | JS 解析为解构赋值 | Range("A1").Value2 = 5 |
0xFF0000 = 蓝色!红色是 0x0000FFApplication.ActiveSheet 获取新表Application.ScreenUpdating = false,否则 WPS 崩溃Sheets.Item(1)、SeriesCollection.Item(1) 等.Select()、.Activate()、.Delete() 等Value2 不是 value2,Formula 不是 formulaDim、Set、Sub/End Sub、&(字符串连接用 +)AddChart2(-1, ...) |
| Style -1 返回 null |
AddChart2(0, ...) |
.Cells.Clear() | 对整表操作不稳定 | .UsedRange.Clear() |