【Excel VBA】TextBox(テキストボックス)操作の基本と安心のセキュリティ対策

【業務効率化】VBA
スポンサーリンク

「またこの大量の顧客データをフォームに入力するのか… 。1件ずつコピペするだけで午前中が終わっちゃう…。しかも、パスワードが画面に丸見えなのも気になるな……」

こんな経験はありませんか?

Excel VBAの「ユーザーフォーム」に配置できる「TextBox(テキストボックス)」を使いこなすことで、これらの悩みはすっきりと解決できます。

この記事では、TextBoxの値を自由に出し入れする方法と、セキュリティを高める実践的な設定方法までを分かりやすく解説します。
今日から入力作業を自動化し、業務効率を劇的に向上させていきましょう!

【業務効率化】VBAの記事を見る

TextBoxの「値」はデータを出し入れする宝箱

TextBoxは、プログラム上でデータを一時的に保管しておく「名前のついた箱」のような存在です。
基本操作は、この箱からデータを取り出したり、逆に新しいデータを書き込んだりするだけになります。

専門用語ではこれらを「プロパティ」と呼びますが、まずは「箱の中身=Value(値)」とイメージしていただくと理解しやすくなります。

値を取得する(箱からデータを取り出す)

ユーザーが画面上で入力した文字を取得し、Excelのセルへ自動的に書き込むためのコードになります。

' --- 入力された名前をセルA1に転記する ---
Sub GetValue()
    ' 1. まずフォームを画面に表示します
    ' (ユーザーが入力し、フォームを閉じるまでここで処理が一時停止します)
    UserForm1.Show

    ' 2. フォームが閉じられた後、メモリ上に残っているテキストボックスの値をセルに転記します
    Sheet1.Range("A1").Value = UserForm1.TextBox1.Value

    ' 3. メモリ上に残ったフォームのデータを完全に消去(解放)します
    Unload UserForm1

End Sub

値を設定する(箱にデータを表示させる)

逆に、プログラム側からTextBoxに文字を表示させるコードです。

Sub SetValue()
    ' 1. まずフォームをメモリに読み込んで値をセットします
    Load UserForm1

    UserForm1.TextBox1.Value = "こちらに入力してください"
    UserForm1.Show
End Sub

パスワードを「*」で隠すセキュリティ設定

ログイン画面などを作る際、入力した文字がそのまま見えるのは不安ですよね。VBAには、入力された文字を特定の記号(*など)に置き換えて表示する機能があります。

この表示コントロールを可能にするのが、「PasswordCharプロパティ」になります。

' --- フォームが開くときの初期設定 ---
Private Sub UserForm_Initialize()

    ' 初期状態ではパスワードを「*」で隠しておきます
    Me.TextBox2.PasswordChar = "*"

    ' もし「パスワードを表示する」チェックボックス(CheckBox1)があれば偽にしておきます
    Me.CheckBox1.Value = False
End Sub

' --- チェックボックスのON/OFFで見た目を切り替える ---
Private Sub CheckBox1_Click()

    ' チェックが入っていれば文字を見せ、外れていれば「*」で隠します
    If Me.CheckBox1.Value = True Then
        Me.TextBox2.PasswordChar = ""    ' そのまま表示
    Else
        Me.TextBox2.PasswordChar = "*"   ' 「*」で隠す
    End If
End Sub

わずか1行のコードを追加するだけで、自作ツールに本格的なセキュリティ機能を実装できます。ユーザーが安心して利用できる環境づくりのために、ぜひ活用してみてください!

【業務効率化】VBAの記事を見る


VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。

この記事を書いた人
ぐー

手取り15万円の会社員でしたが、年間100万円以上節約していました。
株式投資で年間360万円以上投資し、iDeCoも併用しています。
総資産はアッパーマス層に到達しました。
資格は日商簿記3級を持っています。

このブログでは、私が実践してきた節約術やリアルな資産運用、生産性を高めるITスキルについて発信しています。

生活を豊かにするため、高配当株投資で年間配当金60万円をめざしています。
現在の年間配当金は30万円ほどです。

ゲーム・漫画・アニメなどが好きです。
一緒に資産形成をがんばりましょう!
よろしくお願いします!

ぐーをフォローする
【業務効率化】VBAITスキル
スポンサーリンク
ぐーをフォローする

コメント

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