ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
ラベルの 3 種類
| 種類 | 挿入場所 | 特徴 |
|---|---|---|
| フォームコントロール (Label) | 開発タブ → 挿入 → フォームコントロール | 古い形式。シンプル。マクロから操作可 |
| ActiveX コントロール (Label) | 開発タブ → 挿入 → ActiveX コントロール | プロパティが豊富。ただし環境依存あり |
| UserForm の Label | VBE で UserForm に配置 | ダイアログ内の表示。最も柔軟 |
| シェイプにテキスト(代替案) | 挿入 → 図形 → テキストボックス | VBA で Shapes.AddLabel で動的生成も可 |
シート上にラベルを動的に作成
Sub AddLabelDynamic()
Dim lbl As Shape
Set lbl = ActiveSheet.Shapes.AddLabel( _
Type:=msoTextOrientationHorizontal, _
Left:=100, _
Top:=50, _
Width:=200, _
Height:=30)
lbl.Name = "StatusLabel"
lbl.TextFrame.Characters.Text = "処理待機中..."
lbl.TextFrame.Characters.Font.Bold = True
lbl.TextFrame.Characters.Font.Size = 14
lbl.TextFrame.Characters.Font.Color = RGB(0, 102, 204)
End Sub
Sub UpdateLabel(message As String)
On Error Resume Next
ActiveSheet.Shapes("StatusLabel").TextFrame.Characters.Text = message
On Error GoTo 0
End Sub
Sub DemoUpdate()
Call UpdateLabel("処理開始")
Application.Wait Now + TimeValue("00:00:01")
Call UpdateLabel("処理中... 50%")
Application.Wait Now + TimeValue("00:00:01")
Call UpdateLabel("完了しました")
End Sub
セルの変更に応じてラベルを更新
シートモジュール(VBE で対象シートをダブルクリック)に書きます:
' Sheet1 のコード
Private Sub Worksheet_Change(ByVal Target As Range)
' A1 セルの変更だけ反応
If Target.Address = "$A$1" Then
Dim val As Variant
val = Target.Value
If IsNumeric(val) Then
If val > 100 Then
Call UpdateLabel("値が大きすぎます: " & val)
ActiveSheet.Shapes("StatusLabel").TextFrame.Characters.Font.Color = RGB(204, 0, 0)
Else
Call UpdateLabel("OK: " & val)
ActiveSheet.Shapes("StatusLabel").TextFrame.Characters.Font.Color = RGB(0, 153, 0)
End If
Else
Call UpdateLabel("数値を入力してください")
End If
End If
End Sub
UserForm のラベルを操作
' UserForm1 にラベル Label1 を配置している前提
' フォーム表示時に初期化
Private Sub UserForm_Initialize()
Me.Label1.Caption = "ファイル名を入力してください"
Me.Label1.ForeColor = RGB(0, 0, 153)
Me.Label1.Font.Bold = True
Me.Label1.Font.Size = 11
End Sub
' TextBox1 が変更されたらラベルを更新
Private Sub TextBox1_Change()
Dim text As String
text = Me.TextBox1.Value
If Len(text) = 0 Then
Me.Label1.Caption = "ファイル名を入力してください"
Me.Label1.ForeColor = RGB(0, 0, 153)
ElseIf Len(text) > 50 Then
Me.Label1.Caption = "ファイル名が長すぎます(50 文字以内)"
Me.Label1.ForeColor = RGB(204, 0, 0)
Else
Me.Label1.Caption = "OK: " & text & ".xlsx で保存します"
Me.Label1.ForeColor = RGB(0, 153, 0)
End If
End Sub
フォームコントロールのラベル(古い形式)
「開発」タブ → 挿入 → フォームコントロール → ラベル で配置したラベルは Shapes コレクション経由で操作します:
Sub UpdateFormControlLabel()
' ラベル名は配置時に「ラベル 1」「Label 1」等
With ActiveSheet.Shapes("ラベル 1")
.TextFrame.Characters.Text = "新しい表示内容"
.TextFrame.Characters.Font.Bold = True
.Fill.ForeColor.RGB = RGB(255, 255, 200) ' 背景色
.Line.ForeColor.RGB = RGB(255, 153, 0) ' 枠線色
End With
End Sub
' 全ラベル一覧
Sub ListAllLabels()
Dim s As Shape
For Each s In ActiveSheet.Shapes
Debug.Print s.Name, s.Type, s.TextFrame.Characters.Text
Next s
End Sub
ActiveX ラベル
' ActiveX ラベル Label1 がシートに配置されている前提
Sub UpdateActiveXLabel()
With Sheet1.Label1
.Caption = "ActiveX ラベル"
.Font.Bold = True
.Font.Size = 14
.ForeColor = RGB(0, 102, 204)
.BackColor = RGB(255, 255, 200)
.BorderStyle = 1 ' fmBorderStyleSingle
End With
End Sub
セルのコメントもラベル代わりに使える
Sub AddCellComment()
With Range("A1")
If Not .Comment Is Nothing Then .Comment.Delete
.AddComment "ここに注釈を表示"
.Comment.Shape.TextFrame.Characters.Font.Bold = True
.Comment.Visible = True ' 常時表示
End With
End Sub
FAQ
Q: ラベルを背景透過にしたい
A: フォームコントロールは .Fill.Visible = msoFalse。ActiveX は .BackStyle = 0(fmBackStyleTransparent)。
Q: 配置後にラベルの名前を変えたい
A: 右クリックの名前ボックス(数式バーの左)に新しい名前を入力するか、Shapes("旧名").Name = "新名"。
Q: ラベルが印刷されないようにしたい
A: ラベルを右クリック → コントロールの書式設定 → プロパティ → 「オブジェクトを印刷する」のチェックを外す。
📸 参考画像
※ 旧バージョンから引き継いだ参考画像です。手順・図解の補助としてご覧ください。



ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- IPv6とは|128bitアドレス・コロン16進表記/::省略・リンクローカル・SLAAC・デュアルスタック NEW 2026-06-22 12:34:44
- MAC アドレスフィルタリングの仕組みと限界 | ネットワーク入門 NEW 2026-06-22 12:19:10
- VPNとは|暗号トンネル・サイト間/リモートアクセス・IPsec/SSL-VPN/WireGuardを解説 NEW 2026-06-22 12:19:10
- WebRTC とは ブラウザ間 P2P の音声・映像・データ通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/2 とは 多重化・HPACK・バイナリフレーム | ネットワーク入門 NEW 2026-06-22 12:17:25
- Web通信プロトコル入門 HTTP/2・HTTP/3・WebSocket・gRPC・WebRTC | ネットワーク入門 NEW 2026-06-22 12:17:25
- gRPC とは HTTP/2 + Protocol Buffers の高速 RPC | ネットワーク入門 NEW 2026-06-22 12:17:25
- HTTP/3 (QUIC) とは UDP ベースの低遅延 Web 通信 | ネットワーク入門 NEW 2026-06-22 12:17:25
- WebSocket とは 全二重リアルタイム通信 ws/wss | ネットワーク入門 NEW 2026-06-22 12:17:25
- 証明書と認証局(CA)とは|X.509・信頼チェーン・DV/OV/EV・失効(CRL/OCSP)を解説 NEW 2026-06-22 12:17:24
- ファイアウォールとは|パケットフィルタ・ステートフル・DMZ・次世代FW(L4/L7)を解説 NEW 2026-06-22 12:17:24
- iptables/nftablesとは|テーブル・チェーン・ルール例・永続化をLinux視点で解説 NEW 2026-06-22 12:17:24
- HAProxy とは frontend/backend と設定例 | ネットワーク入門 NEW 2026-06-22 12:17:24
- CDN とは エッジキャッシュ・TTL・Cloudflare/CloudFront | ネットワーク入門 NEW 2026-06-22 12:17:24
- TLS/SSLの仕組み|ハンドシェイク・暗号スイート・前方秘匿性・証明書検証をわかりやすく解説 NEW 2026-06-22 12:17:24
コメントを削除してもよろしいでしょうか?