# dotNet.ReoGrid 扩展库 - 工作簿操作分发

所有对工作表执行的操作都必须通过工作簿（即控件本身）进行，操作的目标工作表是当前活动（显示）的工作表。

![157](../images/157.png)

当对不同的工作表执行三个操作时，操作顺序会被保留，以便在不同工作表之间按相同顺序进行撤销和重做操作。

![158](../images/158.png)

对于撤销操作，将按相反顺序执行。![159](../images/159.png)

## 通过工作簿（ReoGrid 控件本身）执行操作

```aardio
// 选择工作表
grid.CurrentWorksheet = mysheet;

// 创建操作（将单元格'A1'设为100）
var action = ReoGrid.SetCellDataAction("A1", 100);

// 执行操作
grid.DoAction(action);
```

## 撤销和重做上一个操作

在撤销和重做操作后，CurrentWorksheet 会自动更改为执行操作的目标工作表。

```aardio
grid.Undo();  // 撤销
grid.Redo();  // 重做
```

**说明：**
1. 在 aardio 中通过 dotNet.ReoGrid 调用时，操作方式与 C# 版本基本一致
2. `SetCellDataAction` 是 ReoGrid 提供的操作类，用于设置单元格数据
3. 撤销/重做功能会保持操作顺序，包括跨工作表的操作