|
|
| (2人の利用者による、間の2版が非表示) |
| 5行目: |
5行目: |
|
| |
|
| == ソースコード == | | == ソースコード == |
| <syntaxhighlight lang="javascript"> | | <syntaxhighlight lang="javascript" copy> |
| with (document.selection) {
| | var sel = document.selection; |
| // カーソル位置を保存
| | // カーソル位置 (選択開始位置) を保存 |
| var x = GetActivePointX(mePosView);
| | var x = sel.GetTopPointX(mePosView); |
| var y = GetActivePointY(mePosView);
| | var y = sel.GetTopPointY(mePosView); |
| // 選択開始位置を保存
| | // 貼付け |
| var ax = GetTopPointX(mePosView);
| | sel.Paste(); |
| var ay = GetTopPointY(mePosView);
| | // カーソル位置を復元 |
| // 選択終了位置を保存
| | sel.SetActivePoint(mePosView, x, y, false); |
| var bx = GetBottomPointX(mePosView);
| |
| var by = GetBottomPointY(mePosView);
| |
| | |
| // 貼付け
| |
| Paste();
| |
|
| |
| // カーソル位置を復元
| |
| SetActivePoint(mePosView, x, y, false);
| |
| // 範囲選択時には最左上の位置に復元
| |
| if (x == bx && y == by) {
| |
| SetActivePoint(mePosView, ax, ay, false);
| |
| }
| |
| }
| |
| </syntaxhighlight> | | </syntaxhighlight> |
2025年6月30日 (月) 00:11時点における最新版
貼付け実行後のカーソル位置は通常、貼付け文字列の末尾になります。
このマクロで貼付けた場合は、貼付け後のカーソル位置が貼付け文字列の先頭になります。
ソースコード[編集]
var sel = document.selection;
// カーソル位置 (選択開始位置) を保存
var x = sel.GetTopPointX(mePosView);
var y = sel.GetTopPointY(mePosView);
// 貼付け
sel.Paste();
// カーソル位置を復元
sel.SetActivePoint(mePosView, x, y, false);