和風スパゲティのレシピ

日本語でコーディングするExcelVBA

日本語変数・関数

VBAでインクリメント演算子(++i)を使う方法

インクリメント演算子とは、i = i + 1 というコードを ++ i のように短縮表現するための演算子です。他言語経験者の方にはおなじみの書き方ですが、残念ながらVBAにはインクリメント演算子がありませんので、自作関数で代用しましょう。

Function名に句読点を使うとシート上で呼べなくなる

Functionプロシージャの名前に句読点を使用すると、ワークシート上でユーザー定義関数として呼び出せなくなります。読点「、」とカンマ「,」、句点「。」とピリオド「.」が自動変換されることが原因のように思えますが定かではありません。

変数名に接頭する「my」の意味

変数にmyRngとかmyNumってよく見ますよね。myRng.SpecialCells(xlCellTypeVisible).Value = myNumみたいなやつ。この「my」はどういう意味かというと、そのまま「自分で作った」とか「自分で使う」という意味です。

関数(プロシージャ)分割は思ってるより簡単です

関数分割が難しいのは「なにを関数にすればいいのかわからない」という、目的の理解が最大の悩みと感じます。この目的を「処理のまとまりに名前をつけられること」と捉えて、母国語の力を借りてコードを読めば、関数化の本質がつかめると思います。

明けましておめでとうございます。

明けましておめでとうございます。 今年もどうぞよろしくお願いいたします。

ユーザー辞書(IME単語登録)にコードを登録する

日本語変数・関数にとって、最大の敵は「入力のめんどくささ」です。この対策として、ふぁん⇒Functionのように変換を登録し、それでコードを入力していく方法があります。逆にコーディングが簡単で速くなるポテンシャルがあるので、是非使っていきましょう。

よく書くコードは汎用関数に - 作り方と使い方

どんなマクロでも使えるような関数のことを汎用関数と呼びます。よく書く処理は汎用関数にして持っておきましょう。同じコードを何回も書かなくて良くなるだけでなく、コードが読みやすくなり、重要な処理に集中できるようになります。

日本語関数はクイックヒントの太字強調がズレる

関数を入力する際、仮引数のリストを表示する機能があり、この機能をクイックヒントと呼びます。このクイックヒントには「入力中の引数を太字で強調する」機能があるのですが、関数・引数名が日本語だとこの協調がズレるので注意しましょう。

英訳してはいけない変数名第3位「専門用語」

英訳してはいけない変数第1位のワークシート、第2位の列見出し名ときて、最後は「専門用語」です。ExcelVBAを用いて業務を効率化せんとするみなさんはその道のプロです。プロ同士の繊細な意思疎通を図るためにも、専門用語はそのまま変数名にしましょう。

英訳してはいけない変数名第2位「列見出し名」

今回は日本語変数に関するお話です。第1位のワークシートに続き、列見出し名が日本語だった場合は、その変数名をわざわざ英訳してはいけません。特にEnum定数などは、入力も日本語の方が簡単なコードですので、しっかり一致させたコードを書きましょう。

英訳してはいけない変数名第1位「ワークシート」

今回は日本語変数に関するお話です。単刀直入に、シート名が日本語だった場合に、その変数名をわざわざ英訳してはいけません。VBAではワークシート名もソースコードの一部です。同じオブジェクトの変数名は、すべてのコードで同じ単語を当てましょう。

人に何か伝えるなら母国語で

このブログの記事が50に到達しました。令和元年12月1日にスタートしたブログですので、およそ8ヶ月半での到達です。やっと書き慣れてきましたので、ペースを上げていきたいですね。いつもご愛読いただいている皆様には、この場を借りてお礼申し上げます。

アプリケーションハンガリアン+日本語は最強の変数名だ

アプリケーションハンガリアンと日本語変数はとっても相性が良くて、区切りと役割がはっきり分かれて読みやすい上に、キーボードの日本語入力をOFFのままで日本語変数を使えるよ。というお話です。最終目的のgifアニメを張りますので見てみてください。

変数を日本語にすればプログラミングが上達する

変数名・関数名などの識別子は、英語を使う明確な理由がない限り、なるべく日本語で命名するべきです。日本語変数を使うことで、翻訳に労力を割かなくなり、コードが読みやすくなり、全体の流れに集中できるようになり、プログラミングの上達が早くなります。