VBA|InputBoxでパスワード入力をマスクする方法

エクセルVBA VBAのユーザーフォーム



InputBoxを使ってパスワードを入力していますか?

パスワードを入力するときに、入力した文字を「*」などでマスクして隠したいときがあります。

今回はInputBoxでパスワード入力したときにマスクする方法について説明します。



InputBoxでパスワード入力をマスクする方法

ImputBoxにはパスワード入力をマスクする方法がない

InputBoxで入力した文字に「*」などでマスクする方法はありません。

InputBoxを使うと、入力欄には入力した文字が表示されてしまいますが、ユーザーフォームを使えば一発で解決できます。(本当に1項目入力するだけで解決できます。)

※ちなみに、入力した文字を隠して別の文字を表示させる場合に使う「*」のような文字を「プレースホルダ文字」と言います。

パスワード入力をマスクする方法【ユーザーフォームを使った場合】

ユーザーフォームにテキストボックスを作ってパスワード入力文字をマスクする設定を行う手順は以下のとおりになります。

今回はマスクして表示される文字を「*」にします。

  1. 新規ユーザーフォームを作る。
  2. テキストボックスを作成する。
  3. 上記テキストボックスのPasswordCharの項目に、*と入力する。

注意点として、PasswordCharを設定したテキストボックスに入力できるのは半角文字だけになります。

実行し、文字を入力してみると「*」が表示されます。

なお、PasswordCharに設定した文字を解除したいどきは、PasswordCharの項目欄に入力した文字を削除してください。(厳密に表現すると、長さ0の文字列を設定するということになります。)

このようにパスワードをマスクするプレースホルダ文字は使用頻度が高いですので、覚えておいて損はないですね!

InputBoxやユーザーフォームについてもう少し知りたい方は、以下の記事もどうぞ。

Excel VBA入門 その35:InputBoxで改行する方法

コメント

  1. […] Excel VBA入門 その37:InputBoxでパスワード入力をマスクする方法 […]

  2. […] Excel VBA入門 その37:InputBoxでパスワード入力をマスクする方法 […]

タイトルとURLをコピーしました