
A 回答 (2件)
- 最新から表示
- 回答順に表示

No.2
- 回答日時:
#1です。
補足拝見しました。失礼ですが、あなたがマクロといわれているものは、
マクロとしての構文を成しておりません。
以下の部分です。
-------------------------
(L-SPINDLE)→(L-SPINDLE)
(VER.20130302)→(未検証 *は常に注意)
M86→M32
G54→G55
M03→M55
・・・(途中省略)
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)000→\1→r
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)([0-9])00→\1\2→r
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)([0-9][0-9])0→\1\2→r
-------------------------
マクロの構文は、必ずセミコロン(;)で終わります。
コメントの場合は、//で始まりますので、コメント行はセミコロンで終わる必要はありません。
上記の部分はマクロではないように見えます。(マクロが処理するデータかも知れません)
このファイルは、拡張子(.mac)がついていますでしょうか?
また、M86→M32 のような構文はマクロにはありません。(セミコロンをつけてもマクロとして正しくはなりません。)
従って、実際に変換するマクロがほかにあり、ここで提示されているのは、単なるコメント(若しくはマクロ実行時に処理するデータ)のように思われます。
ありがとうございます。
私が操作していたのは、置き換えパターンの txtファイルでした。
同じフォルダにマクロのファイル .macがありました。
そちらに追加してみようと思っていますが、長いファイルに適当に挿入するのも恐ろしいですし、何とかマクロを作成された方に連絡を取ってみようと思います。
ありがとうございました。

No.1
- 回答日時:
以下のようにしてください。
----------------------
gofiletop;
while(1){
searchdown "W[0-9][0-9]\.",regular
if (result ==0) break;
$str1 = gettext(x+1,y,x+2,y);
#num = val($str1) + 4;
$str2 = str(#num);
right;
delete;
insert $str2;
}
-----------------------
Vwersion8.21で確認済みです。
尚、40を足した結果、2桁をオーバーフローした場合
については、仕様が提示されていませんので、3桁で出力するようにしています。
例 W61. の場合 40を足しますので W101.となります。(オーバーフローのケース)
この回答への補足
ありがとうございます。
マクロ実行
編集
(新規ファイルに教えていただいたマクロを登録)
OK にすると+40になりました。
ありがとうございます。
実際の使用で、マクロ登録(マクロ実行ではない)して、名前を付けて保存し、その他の置き換えなどと一括して処理しています。
現在使用しているマクロに挿入して使ってみたのですが、Wの計算がなされません。
何か問題がありそうです。
(元のマクロ自体、私が作ったものではないので、あまり理解できていません)
以下参照
gofiletop;
while(1){
searchdown "W[0-9][0-9]\.",regular
if (result ==0) break;
$str1 = gettext(x+1,y,x+2,y);
#num = val($str1) + 4;
$str2 = str(#num);
right;
delete;
insert $str2;
}
//------
// リスト1.置換する文字列
// 凡例)
// c:大文字と小文字を区別
// r:正規表現
// ※正規表現使用時には、以下の記号が利用可能となる
// \n:正規表現
// \t:タブ
// . :任意の一文字
// * :任意の文字列の繰り返し
// \1:パターンマッチした文字列
// ():グルーピング
// [0-9]:任意の0から9までの一桁の数字
// [A-Z]:任意のAからZまでの一桁の文字
// →:区切り文字(マクロ実行時のダイアログで指定)
// 注意点)
// ・特殊文字にはエスケープシーケンスを付与する
// 例:"."は"\."
// VER.20130302 未検証
//------
(L-SPINDLE)→(L-SPINDLE)
(VER.20130302)→(未検証 *は常に注意)
M86→M32
G54→G55
M03→M55
M04→M55
M05→M55
M10→M50
M11→M51
M20→M420
M21→M421
M41→M441
M91→M491
M427→M428
M428→M427
M785.→M787.
M703→M403
M704→M404
I3.→I*4.
I2.→I*1.
G41→@@10
G42→@@11
@@10→G42
@@11→G41
G02→@@12
G03→@@13
@@12→G03
@@13→G02
C-→@@1
C→@@2
@@1→C2=
@@2→C2=-
Z-→@@3
Z→@@4
@@3→Z
@@4→Z-
B-→@@14
B→@@15
@@14→B
@@15→B-
R-→@@16
R→@@17
@@16→R
@@17→R-
H0→H2=0
//------
// 共通:後処理
//------
//不要な0取り
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)000→\1→r
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)([0-9])00→\1\2→r
([XYZW][0-9]*\.|[XYZ]\-[0-9]*\.)([0-9][0-9])0→\1\2→r
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) テキストエディタで複数行にわたる文字列の行頭に番号を振る方法 4 2023/03/11 12:57
- その他(プログラミング・Web制作) python コードについて(初学者です) 3 2023/07/20 14:44
- Word(ワード) LibreOfficeで数年保存しているデータの変更作業 4 2022/07/08 17:15
- C言語・C++・C# このプログラミングの問題を教えてほしいです。 キーボードからデータ数nとn個のデータを入力し、平均値 3 2022/12/19 22:51
- その他(ビジネス・キャリア) 今時の派遣社員って仕事が出来ないだけじゃなく計算も出来ないのか? 8 2022/07/22 20:53
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Word(ワード) ワードフォント 一括置換の方法 4 2022/12/31 00:27
- Visual Basic(VBA) Excel VBA マクロ ある列の最終行迄を参照し、別の列の空白セルに値を入力したいです 2 2023/03/05 02:44
- 画像編集・動画編集・音楽編集 わかりやすい写真編集ソフト 3 2022/07/16 09:59
- Visual Basic(VBA) 特定の文字を簡単な操作で半角スペースに変換するか削除したい 2 2022/11/01 10:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel マクロ VBA プロシー...
-
エクセルで特定の列が0表示の場...
-
一つのTeratermのマクロで複数...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
エクセルに張り付けた写真のフ...
-
Excel・Word リサーチ機能を無...
-
ExcelのVBA。public変数の値が...
-
公務員試験のマクロ経済の問題...
-
UWLSの記録でマクロを作成し使...
-
Excel VBAからAccessマクロを実...
-
エクセルでキーリストからデー...
-
TERA TERM のマクロを教えてく...
-
Access、マクロの最後に最適化...
-
エクセルのマクロについて教え...
-
エクセル マクロの同時実行に...
-
SwichBotによる自動温度調整を...
-
マクロってなんですか?
-
c言語で言うところの #define
-
EXCEL VBAでApplication.waitを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定のPCだけ動作しないVBAマク...
-
Excel・Word リサーチ機能を無...
-
エクセルで特定の列が0表示の場...
-
Excel_マクロ_現在開いているシ...
-
一つのTeratermのマクロで複数...
-
メッセージボックスのOKボタ...
-
Excel マクロ VBA プロシー...
-
ExcelのVBA。public変数の値が...
-
エクセルで別のセルにあるふり...
-
エクセルに張り付けた写真のフ...
-
Excel マクロでShearePoint先の...
-
TERA TERMを隠す方法
-
Excelのセル値に基づいて図形の...
-
Excel VBAからAccessマクロを実...
-
ExcelVBAでPDFを閉じるソース
-
マクロ実行時、ユーザーフォー...
-
オートフィルターとExcelマクロ...
-
wordを起動した際に特定のペー...
-
特定文字のある行の前に空白行...
-
エクセルで縦に並んだデータを...
おすすめ情報