このサイトでは、以前、変数名にハンガリアンという変数名命名法を使って日本語変数名をうまく扱おう、という主旨の解説も行いました。ハンガリアンをうまく使おう序文はい。プログラマーのKaBAです。今日も一日、お役立ち情報をお届けします。何かの際に皆さんのお役に立てたら幸いです。今日は、変数名の付け方のルールについてお話しします。...今回は、セルのメソッドを全体的にハンガリアンにしたセルをあらかじめ「エクセルVBA日本語化」の中に組み込みました。本日は、その使い具合を解説します。本日の解説の内容を実行するには、「エクセルVBA日本語化」ver0.20.0以上が必要です。以下のダウンロードページからダウンロードされるか、Vectorのホームページからダウンロードされてください。ダウンロードhttps://cunning-pg.ringing-web.com/download/エクセルVBA日本語化ダウンロード以下のリンクから、ダウンロードできます。セルの集合演算メソッドを追加しました。ハンガリアンセルver1を試験的に導入しました。本日の課題では、“A1:C3”までのセル範囲から、“B1:B3”のセル範囲を「集合差」で除外した後に、選択状態にします。実行結果は以下のようになります。“A1:C3′′から、”B1:B3′′が除外されて選択されていますね。ハンガリアンセルの宣言まずは、サブルーチンとよばれる、VBAの実行に使う最小単位の枠をつくりましょう。最小単位の枠は以下のようになります。最小単位の枠(サブルーチン)または、以下からコピペされてもかまいません。Subでは、さっそくハンガリアンセルを使いましょう。変数の値は代入しません。dim変数宣言キーワードを入力後、変数名を入力し、「as」の後に変数の型を入力します。変数の型を入力する際は、「hng」まで入力すると、補完候補が現れます。ここでは、「hngハンガリアンセルv1」を選択し、TABキーを押下して、「hngハンガリアンセルv1」を確定します。「hng」まで入力し「hngハンガリアンセル」の補完を行うもう一つハンガリアンセル型の変数を作っておきましょう。先ほどのやり方と同様に行ってください。一個ハンガリアンセルを宣言する2つのハンガリアンセルの使用用途は以下のようになります。集合差で引き算するセル範囲また、以下のコードをコピペされてもかまいません。次に、変数宣言したハンガリアンセルに値を代入してみましょう。ハンガリアンセルはオブジェクトと呼ばれる種類の変数で、値の代入には、「Set」キーワードを使います。「=」を入力後、ハンガリアンセルの値を取得するために、「g_道具」を呼び出します。「g_」まで入力し、CTRL+スペースで補完できます。「g_道具」の持っている関数で、ハンガリアンセルの値を生成します。「g_道具.」まで入力した後、「hng」と入力してください。「hngハンガリアンセル」と「hngハンガリアンセルv1」が補完候補に現れます。「hngハンガリアンセル」の方は、実験的なものですので、無視されてください。補完候補から「hngハンガリアンセルv1」を選択し、TABキーを押下して補完を確定します。次にハンガリアンセルの値の持つセル範囲を指定しましょう。このあたりは、Rangeオブジェクトと同様です。「hngハンガリアンセルv1」の後に左丸括弧を入力すると、「hngハンガリアンセルv1」にどのような引数を指定できるのか、黄色い付箋紙で説明が出ます。ハンガリアンセルにセル範囲を設定ここでは、「hngハンガリアンセルv1」のセル範囲を以下のようにします。指定後は以下のような画面になります。2つのハンガリアンセルに、セル範囲を設定した画面ここまでのコードは、以下からコピペされてください。次にハンガリアンセルで、セル集合の集合差をとってみます。セル集合を引いた集合を求めてみます。“A1:C3”のセル集合を持っている「w_hng」で始まる集合を呼び出します。「w_hng」まで入力し、CTRL+スペースを押下します。すると、「w_hngハンガリアンセル」という変数名が補完されます。次に、「w_hngハンガリアンセル」に「.(ピリオド)」を入力し、「syugo」と入力します。すると、ハンガリアンセルが持つ「syugo集合差」というメソッド名が補完候補に挙げられますので、「syugo集合差」を選択して、TABキーを押下し、補完を確定します。次に、一つ半角空白を入力し、「syugo集合差」の引数のヘルプを表示します。下図の黄色い付箋紙がヘルプです。ここでは、「hngハンガリアンセルv1」型の変数を指定するようですね。持つ変数「w2_hngハンガリアンセル」を指定します。「w2_hng」まで入力し、CTRL+スペースを押下すると、「w2_hngハンガリアンセル」まで補完されます。集合差の差を取る対象の2つめのハンガリアンセルの変数名を「w2_hng」まで入力。下図が、「w2_hngハンガリアンセル」まで補完された結果です。引き算の結果は、「w_hngハンガリアンセル」に入っています。ここまでのコードは以下の通りです。コピペされてください。最後に、集合差したセル範囲を「選択」してみましょう。「w_hng」まで入力し、CTRL+スペースを押下し、補完させます。次に、「hngハンガリアンセル」の「sentaku選択」メソッドを呼び出しましょう。「w_hngハンガリアンセル」の後に「.(ピリオド)」を入力し、「sentaku」と入力します。すると、下図のように補完候補が現れます。ここでは、「sentaku選択」を選択し、TABキーを押下して、補完を確定させます。「hngハンガリアンセル」型の「sentaku選択」メソッドが補完されました。これで、「w_hngハンガリアンセル」の持つセル範囲がエクセル上で選択されます。「sentaku選択」を選び、TABキーを押下して、「sentaku選択」メソッド名を確定ここまでのコードは、以下のようになります。コピペされてください。Sub最後に、「w_hngハンガリアンセル」と「w2_hngハンガリアンセル」にNothingを代入して、初期化しましょう。Nothnigを代入すると、「w_hngハンガリアンセル」と「w2_hngハンガリアンセル」が使っていたメモリが解放されて、メモリ空き容量が浮くようになります。後始末に、ハンガリアンセルの値を「Nothing」にし、メモリを解放ここまでのコードは以下の通りです。コピペされてください。Su実行結果それでは、本日制作した日本語VBAコードを実行して実行結果を得ましょう。エクセルに戻って、「開発」タブを開き、「マクロ」ボタンをクリックします。「開発」タブ→「マクロ」をクリックすると「マクロ」ダイアログが表示されます。ここで、「マクロ名」の中から、「ハンガリアンセルテスト01」を選択し、「実行」ボタンをクリックします。以下のようになります。セルが除外されて(集合差されて)、範囲選択されていますね。実行結果ハンガリアンセルのメソッドの確認の方法ハンガリアンセルにはどのようなメソッドがあるのでしょう?それを事前に確認する方法があります。それが、VBAに付属の「オブジェクトブラウザー」です。オブジェクトブラウザーでは、メソッドを一覧表示できます。下記ページも、参照されてみてください。開いてみようhttps://cunning-pg.ringing-web.com/%e3%82%a8%e3%82%af%e3%82%bb%e3%83%ab%e9%96%a2%e6%95%b0%e6%97%a5%e6%9c%ac%e8%aa%9e%e5%8c%96%e3%81%a7-%e3%82%aa%e3%83%96%e3%82%b8%e3%82%a7%e3%82%af%e3%83%88%e3%83%96%e3%83%a9%e3%82%a6%e3%82%b6%e3%83%bc/エクセル関数日本語化でオブジェクトブラウザーを開いてみようはい。以下の記事の手順で、エクセル関数日本語化をインストールした後、無事VBAが日本語になっているか確認してみましょう。オブジェクトブラウザー」とメニューをたどって、クリックする必要があります。オブジェクトブラウザー」オブジェクトブラウザーを開いた後は、たくさんのメソッドが一覧されます。そこで、検索して絞り込んで表示してみましょう。「検索」ボックス(虫眼鏡アイコンのあるところ)に、「ハンガリアン」と入力し、虫眼鏡アイコンをクリックします。上図のようにライブラリ「Excel_VBA_JP_vX_XX」のクラス「hngハンガリアンセル」の箇所をクリックすると、画面真ん中あたりに、「hngハンガリアンセル」のメソッド一覧が表示されます。それぞれのメソッド名をクリックすると、画面下部のグレーの箇所に、メソッドの引数なども表示されます。一度、一覧で「hngハンガリアンセル」のメソッド名を確認しておくと、後々便利そうですね。まとめ皆さん、大変お疲れ様でした。ここまで読んで頂いて誠にありがとうございました。本日の学びを以下にまとめます。後は、「hng」まで入力し、補完候補を表示させ、「hngハンガリアンセルv1」を選択すると、ハンガリアンセル型の変数となる。ハンガリアンセルの「syugo集合差」メソッドを使うと、セル集合とセル集合の集合差を得ることができる。ハンガリアンセルの「sentaku選択」メソッドを使うと、エクセル上で、セル集合(セル範囲)を選択することができる。「オブジェクトブラウザー」でハンガリアンセルのメソッド名の一覧を確認できる今回は、ハンガリアン、集合差、エクセル上でセル範囲選択など、なかなか難しい概念が出てきました。これらを使うと、より簡単・便利にエクセルVBA、日本語VBAを活用することができます。この機会に覚えられてください。最新の記事KaBA@フリーランス修行中こんにちは!IT業界で勤めて17年くらい務めています。プログラミング大好きやろーです。自分も独学でC言語を覚えIT会社に就職しました。その後紆余曲折を経て、VB6.0、VBA、Perl、C#、HTML、CSS、JavaScript、PHPなどを覚えていきました。全部C言語の独学時の経験がベースとなって、学習曲線が良いカーブを描いていました。頑張って覚えられてください!よろしくお願いします。さんの三国志などが好きです。インストールする方法はい。(8)AWHホスティング999円で8GBメモリのVPS。AWHホスティングがご提供。G-Toolsエクセル関数日本語化というエクセルの関数を日本語にする無料のアプリがあります。エクセルファイル単体で日本語化されていますので、PCの他のエクセルファイルには影響はありません。ワンコイン(1ドル)でご購入できます。エクセルの関数も日本語で覚えれば、意外と素直にわかりやすいです。G-Toolsエクセル関数日本語化というエクセルの関数を日本語にする無料のアプリがあります。エクセルファイル単体で日本語化されていますので、PCの他のエクセルファイルには影響はありません。ワンコイン(1ドル)でご購入できます。エクセルの関数も日本語で覚えれば、意外と素直にわかりやすいです。WordPress%d人のブロガーが「いいね」をつけました。