#! https://zhuanlan.zhihu.com/p/635569763 # Excel DDE Commands ## 連接參數 `Application`: `Excel` `Topic`: `System`: 整個應用。 [sheetname] 指定 worksheet。 我使用的是 ...
! https://zhuanlan.zhihu.com/p/635569763
Excel DDE Commands
連接參數
Application
: Excel
Topic
:
System
: 整個應用。
[sheetname] 指定 worksheet。
我使用的是 .NET
組件 Specshell.NDde
private DdeClient _ddeClient;
public void Init()
{
try
{
_ddeClient = new DdeClient("EXCEL", "System");
_ddeClient.Context.Encoding = System.Text.Encoding.Default;
_ddeClient.Connect();
}
catch (Exception ex)
{
log.Error(ex);
}
}
public void Execute(string cmd, bool needEsc = false)
{
if (needEsc)
{
_ddeClient.TryExecute("[ESC]", 10);
}
_ddeClient.TryExecute(cmd, 5);
}
public void Dispose()
{
try
{
_ddeClient?.Disconnect();
}
catch { }
}
DDE commands
- 命令大小寫不敏感(case insensitivity)
- 命令可以帶括弧,也可以不帶括弧
[paste]
=[paste()]
Command | 說明 | Description |
---|---|---|
Application commands | ||
[app.activate] |
激活應用 | activate the application |
[quit] |
關閉應用 | quit the application |
Workbook commands | ||
[activate("WorkbookName")] |
激活指定的文檔 | activate a workbook |
[close(false)] |
關閉文檔 | close a workbook |
[file.close(false)] |
關閉文檔 | close a workbook |
[new(1)] |
新建一個 workbook | new a workbook |
[open("filepath.xlsx")] |
打開一個 workbook | open a workbook |
[save.as("test1.xlsx")] |
保存文檔 | save as a workbook |
Worksheet commands | ||
[workbook.delete("Sheet1")] |
刪除一個 worksheet | delete a worksheet |
[workbook.insert(1)] |
新建一個 worksheet | new a worksheet |
[workbook.move("", "", 1)] |
移動一個 worksheet | move a worksheet |
[workbook.name("Sheet1", "SheetA")] |
命名一個 worksheet | rename a worksheet |
[workbook.new] |
打開插入對話框 | open the insert dialog |
[workbook.next] |
移動到下一個 worksheet | move to the next worksheet |
[workbook.prev] |
移動到上一個 worksheet | move to the previous worksheet |
[workbook.select("worksheetName")] |
激活一個 worksheet | activate a worksheet |
data commands | ||
[clear] |
清除當前選擇的值 | clear selection values |
[column.width(,"c1:c2",false,1)] |
隱藏/顯示列 | hide/un-hide columns |
[column.width(20,"c1:c2")] |
設置列寬 | set width of columns |
[copy] |
複製。 | copy selection values |
[edit.delete] [1] |
刪除當前選擇的單元 | delete selection values |
[esc] |
發送一個 Escape 鍵? | send the escape key? |
[format.font("Verdana",12)] |
設置字體 | set font |
[formula("=formula")] |
設置值 | set a value |
[insert(shiftDirectionAndMode)] |
插入 | insert |
[paste("R1C1")] |
粘貼到指定的單元 | paste to the cells |
[paste] [2] |
粘貼 | paste |
[patterns(1,0,3)] |
設置單元格式 | set format of cells |
[row.height(,"r1:r2",false,1)] |
隱藏/顯示行 | hide/un-hide rows |
[row.height(20,"r1:r2")] |
設置列寬 | set height of rows |
[select("R[1]:R[1]")] |
相對位置,選擇下一行 | select a relative row |
[select("R[1]")] |
相對位置,選擇下一行 | select a relative row |
[select("R1:R2")] |
選擇行 | select rows |
[select("R1C1")] |
選擇單元 | select cells |
[undo] |
撤銷操作 | undo |
-
[paste]
不同的選擇模式,插入方式不同。單元選擇,行選擇,列選擇,範圍選擇- 參數:
shiftDirectionAndMode
1
- cell move right
2
- cell move down
3
- row move down
4
- column move right
- 參數:
-
[format.font("Verdana",12,false,false,false,false,4,false,false)]
設置字體。
參數: (font-family, fontname, bold, italic, underline, strikethrough, color index, ?, ?)
color index: 0 ~ 56color index color color 0 automatic ABC 中國 1 #000000 ABC 中國 2 #FFFFFF ABC 中國 3 #0000FF ABC 中國 4 #00FF00 ABC 中國 5 #FF0000 ABC 中國 6 #00FFFF ABC 中國 7 #FF00FF ABC 中國 8 #FFFF00 ABC 中國 9 #000080 ABC 中國 10 #008000 ABC 中國 11 #800000 ABC 中國 12 #008080 ABC 中國 13 #800080 ABC 中國 14 #808000 ABC 中國 15 #C0C0C0 ABC 中國 16 #808080 ABC 中國 17 #FF9999 ABC 中國 18 #663399 ABC 中國 19 #CCFFFF ABC 中國 20 #FFFFCC ABC 中國 21 #660066 ABC 中國 22 #8080FF ABC 中國 23 #CC6600 ABC 中國 24 #FFCCCC ABC 中國 25 #800000 ABC 中國 26 #FF00FF ABC 中國 27 #00FFFF ABC 中國 28 #FFFF00 ABC 中國 29 #800080 ABC 中國 30 #000080 ABC 中國 31 #808000 ABC 中國 32 #FF0000 ABC 中國 33 #FFCC00 ABC 中國 34 #FFFFCC ABC 中國 35 #CCFFCC ABC 中國 36 #99FFFF ABC 中國 37 #FFCC99 ABC 中國 38 #CC99FF ABC 中國 39 #FF99CC ABC 中國 40 #99CCFF ABC 中國 41 #FF6633 ABC 中國 42 #CCCC33 ABC 中國 43 #00CC99 ABC 中國 44 #00CCFF ABC 中國 45 #0099FF ABC 中國 46 #0066FF ABC 中國 47 #996666 ABC 中國 48 #969696 ABC 中國 49 #663300 ABC 中國 50 #669933 ABC 中國 51 #003300 ABC 中國 52 #003333 ABC 中國 53 #003399 ABC 中國 54 #663399 ABC 中國 55 #993333 ABC 中國 56 #333333 ABC 中國 -
[patterns(1,0,3)]
設置單元。
參數: (pattern, border, background color) -
[column.width(20,"c1:c2")]
設置列寬。
參數: (columnWidth, columns)) | -
[column.width(,"c1:c2",false,1)]
隱藏/顯示列。
參數: (n/a, columns, ?, (1
: hide,2
:un-hide)) -
[row.height(20, "r1:r2")]
設置列寬。
參數: (rowHeight, rows)) | -
[row.height(,"r1:r2",false,1)]
隱藏/顯示行。
參數: (n/a, columns, ?, (1
: hide,2
:un-hide))
請“推薦”本文!