はじめに

多量の行が表示されないように、このブログは1コンテンツしか表示されない。ブログアーカイブから、他の記事を捜してくれ。

環境作れし。
・gawk 3.1.5 for Windows をググッて入手。
・gawk.exeをpathの通ったフォルダにぶち込めし。
 (「windows パスを通す」ググッて)
 (面倒なら、C:\windowsにぶち込む)
・環境変数「awkpath」にスクリプトを保存するフォルダを設定。
 (「環境変数 設定 windows」ググッて)
 (面倒なら、C:\windowsに、紹介されているスクリプトぶち込む)

2024年4月29日月曜日

VBA:SQL日英相互変換

Gemini先生、すばらしい。今回のマクロのソースを「このコードの取扱説明書を日本語で書いて」の一文を添えて貼り付けたら説明書を書いてくれたし。

で、下準備だ。
マクロ対応ブック(.xlsm)に"DBDIC"というシートを作成し、エンティティ定義書やテーブル項目定義書を基に"DBDIC"というテーブルを作れし。項目名、項目IDは正規化しろし。テーブル名と項目名の対応は管理せずそれぞれ個別の辞書を作っている。

セル範囲はどこでもいいが、3,4,6,7カラムにテーブル英名、テーブル日名、項目英名、項目日名が入った表を作れし。カラム位置や並び順を変えたいならMakeDICマクロを修正しろし。
表を範囲選択し、CTRL+Tを押せば、テーブルが作成される。


[テーブルデザイン]-[テーブル名]を”DBDIC"に変更。

VBAエディタから「メニュー追加」を実行すりゃ準備完了。

別のシートを適当に作成し、仕様書から日本語SQLを張り付けたりSQLコードを貼り付け、セル範囲選択し、右クリックメニューから「SQL日英」「SQL英日」「取り消し線文字排除」を実行しろし。クリップボードに結果が転送される。
※下図、whear->where な。面倒だから直さん。

SQLCONV.BAS

以下、Gemini先生の説明だ。日英と英日を取り違えてるのは御愛嬌だ。


このマクロは、主に以下の機能を提供します。

    このコードの取扱説明書 (This code's manual)

    このマクロは、主に以下の機能を提供します。

    • メニューの追加と削除
      「SQL日英」や「SQL英日」などのメニューを Excel の右クリックメニューに追加したり削除したりできます。
    • 辞書の作成
      あらかじめ用意されたシート ("DBDIC") から、日英変換用の辞書を作成します。
    • 取消線文字を除外したコピー
      選択範囲のセルにあるテキストをコピーしますが、取り消し線が付いている文字は除外されます。
    • SQL文の変換
      「SQL日英」メニューを選択すると、選択範囲の英字を日本語に変換します。逆に「SQL英日」メニューを選択すると、日本語を英字に変換します。変換には、あらかじめ作成した辞書が使用されます。

    使い方

    1. このコードを VBA エディタに貼り付けます。
    2. 必要に応じて、シート "DBDIC" の内容を変更します (日英変換用の辞書データです)。
    3. マクロを実行したいセルまたはシート上で、右クリックメニューから追加したメニューを選択します。

    注意

    • このマクロは、作成されたシート ("DBDIC") を前提としています。このシートの内容を変更したり削除したりすると、マクロが正しく動作しなくなる可能性があります。