■ 質問はここへ ■

1367 にジャンプ
No. 1366投稿者: みずほ日付: 2005/03/17 00:23:18
題名 : 作家用マクロの組み込み方の件

先日は早々にご返事いただきありがとうございます。今回の作家用マクロとは依田秀人さん制作のマクロのことです。依田さんにもおたずねする予定でいますが、もしかしたらこちらの初心者対象の掲示板の方が適当かと思い教えを請うた次第です。ご返事で指摘いただいたポイントが理解できないで困っています。第一に、「マクロ解析エラー」として「プロシージャmainが見つかりません」という表示が他のメニューから呼び出すマクロである可能性がある、という点。第二に、macのマクロファイルのほかにも、qma
の自動インストール用ファイルもマクロフォルダに置く必要がある、という点。依田さんの作家用マクロのファイルはqsakka.txt,qoutline.txt,qsakka.macの三つです。第三に、マクロメニューから呼び出した場合なら、サブプロシージャのリストが表示されるので、mainがなくても実行できるはず、という点。現在表示されるのは登録マクロ一覧だけです。以上、折角のご返事にもかかわらず、解決できず心苦しい限りですが、当方の率直な実情です。マクロが使用できないのは各ファイルの保存方法に問題があるのでしょうか。初歩的過ぎて恐縮の至りですが、教えていただければ幸いです。

No. 1367 (1366へのコメント)投稿者: かぶねこ HP日付: 2005/03/17 01:07:24
題名 : Re:作家用マクロの組み込み方の件

よだ さんのマクロのことでしたか。どのマクロかわかって、しかもそのファイルが
手元にあると確認しやすいのです。で、内容をチェックしてみましたが、
このマクロには proc main という行がなく、内容が小さいマクロを呼び出す個別の
プロシージャになっているので、QX でマクロファイルを裏で開いた状態で
メニューから「マクロmain実行」を選択して動作させることはできません。

作者のほうでは、ひとつひとつのプロシージャをショートカットキーに割り当てて
使用するとか、そういう使い方を想定なさっているのではないでしょうか。
「マクロmain実行」から使えるようにするためには、proc main を追加して、
個々の小さいマクロをメニューとして提示するように変更する必要があります。

必要でしたら作者のほうに要望してみてはいかがでしょうか。自力で解決する
方向で、メニューを表示したりというのがむずかしい場合、内部はそれぞれが
マクロなので切り分ければ使えます。新規ファイルに個別のプロシージャを
ペーストして、プロシージャの名前を main に変更するのです。すなわち、proc で
始まり、end proc で終わるブロックごとに別ファイルを作成する、という意味です。

問題は、「マクロmain実行」では同時に開いておけるマクロが 1 つなので、いろいろな
機能を使い分けできなくなることです。

自力でメニューを追加してみよう、という場合、次のことをお試しください。
マクロファイルを別名で保存してコピーを作成し、内容に以下のようなメニュー
表示部分を追加します。

proc main
dim item$[20] '下のアイテムの数より多く数を設定
dim i, sel
i = 1
item$[i++] = "作家用マクロ" 'ここにマクロのタイトル
item$[i++] = "-"
item$[i++] = "記号入力マクロ" 'ここから個別のマクロのタイトル
item$[i++] = "顔文字入力マクロ"
item$[i++] = "括弧入力マクロ"
'以下、必要なだけ追加

sel = popupmenu(item$) 'メニュー提示部分
if sel < 3 then exit proc 'キャンセル動作
if sel = 3 then Kigou 'ここから個別マクロのプロシージャ呼び出し/カッコなし
if sel = 4 then Kakko
if sel = 5 then Kaomoji
'以下、順序を上と揃えて必要なだけ追加
end proc

たぶんこれでうまくいくと思うのですが……。


ヘッダのみ表示
順番に表示(No. 1367 から)


メールアドレスを表示するにはURLの後ろに &m=457aa45f をつけてください。
ユーザー フォーラム一覧

http://www2k.biglobe.ne.jp/~araken/
http://0ban.com/araken/