ラベル VBA の投稿を表示しています。 すべての投稿を表示
ラベル VBA の投稿を表示しています。 すべての投稿を表示

2017年12月20日

【Access】リボンを非表示にするマクロ


リボンは最小化するだけじゃなく非表示にすることも出来ます。
リボンを非表示にすればウィンドウが広く使え、見た目にもすっきりします。

下記は、フォーム読み込み時にリボンを非表示にしています。
Private Sub Form_Load()

    DoCmd.ShowToolbar "Ribbon", acToolbarNo

End Sub
ShowToolbarメソッドの第1引数に"Ribbon"、第2引数にacToolbarNoを指定すれば非表示、acToolbarYesを指定すれば表示になります。

2017年12月19日

【Access】リボンを最小化するマクロ


リボンを最小化する方法です。

たとえばこのようなフォームにボタン(buttonChange)が貼り付けてあるとします。



この「切り替え」ボタンをクリックしたときにリボンの最小化・解除を切り替えるには次のようにします。

Private Sub buttonChange_Click()

    Application.CommandBars.ExecuteMso "MinimizeRibbon"
    
End Sub
リボンを最小化するには、CommandBarsオブジェクトのExecuteMsoメソッドで「MinimizeRibbon」を指定します。ただし、リボンが最小化されてる状態で実行するとリボンが表示されるようになっていますので注意が必要です。その場合は、GetPressedMsoメソッドでリボンの状態を確認するなどしてください。


実行結果







2017年12月8日

【Access】テキストボックスを入力不可にする


テキストボックスを入力不可にする方法ですが、いくつかやり方がありますのでパターンをまとめてみました。

使用可&編集ロック有り

Private Sub Form_Load()

    '使用可
    Me.textName.Enabled = True
    
    '編集ロック有
    Me.textName.Locked = True
    
End Sub
テキストボックスにカーソルは移動できますが、入力出来ない状態です。

2017年12月5日

【Access】ズームボックスを表示する


Accessにはズームボックスというものがあります。このズームボックスを使うことによって、テキストボックスなどに入力されている文字列の編集がやりやすくなります。

たとえば、このようにフォームにテキストボックスが貼り付けてあるとします。


このテキストボックスをダブルクリックした際に、ズームボックスを表示するようにしてみたいと思います。

Private Sub textMemo_DblClick(Cancel As Integer)

    DoCmd.RunCommand acCmdZoomBox

End Sub


実行結果



ちなみに、このズームボックスは、[Shift] + [F2]でも表示することが出来ます。






2017年12月4日

【Access】イメージをタイル状に並べる


イメージコントロールに画像をタイル状に並べる方法です。

たとえば、このようにフォームにイメージコントロールが貼り付けてあるとします。


このイメージコントロールに画像をタイル状に表示させるには次のように記述します。

Private Sub Form_Load()

    '画像ファイルの指定
    Me.imageView.Picture = "C:\work\pic\morumotto_s.jpg"
    
    'OLEサイズ(クリップ)
    Me.imageView.SizeMode = acOLESizeClip
    
    '画像を並べて表示
    Me.imageView.PictureTiling = True
    
End Sub
※指定する画像はイメージコントロールより小さいサイズにしてください。


実行結果



<参考サイト>
Image.SizeMode プロパティ (Access) | MSDN






2017年12月2日

【Access】イメージコントロールに画像ファイルを指定する


イメージコントロールに画像ファイルを指定する方法です。

たとえば、このようにフォームにイメージコントロールが貼り付けてあるとします。


このイメージコントロールに画像ファイルを指定してみたいと思います。

Private Sub Form_Load()

    Me.imageView.Picture = "C:\work\pic\morumotto.jpg"
    
End Sub


実行結果







2017年12月1日

【Access】コントロールにツールチップを表示させる


テキストボックスなどのコントロールにツールチップを表示させるには、ControlTipTextプロパティを使います。

たとえば、このようにフォームにテキストボックスが貼り付けてあるとします。


このなかの「フリガナ」テキストボックス(textKana)にツールチップを表示させてみたいと思います。

フォームのロードイベントプロシージャに次のように記述します。
Private Sub Form_Load()

    Me.textKana.ControlTipText = "カタカナで入力してください。"
    
End Sub


実行結果







2017年11月30日

【Access】テキストボックスに定形入力の設定をする


テキストボックスに決まった形で入力させたい場合があります。そういった場合は、テキストボックスに定形入力の設定を行っておくといいです。

たとえば、次のようなフォームに郵便番号を入力させるテキストボックス(textZipcode)が貼り付けてあるとします。


このテキストボックスに定形入力を設定してみたいと思います。

Private Sub Form_Load()

    '郵便番号の定形入力
    Me.textZipcode.InputMask = "000-0000;0;""_"""
    
End Sub
まず、設定値の「;」で区切られた最初のセクションに定形入力を指定します。今回指定してる「0」は0~9の半角数字を入力できることを意味しています。
次の2番目のセクションは、入力されたデータの方法です。「0」を指定すると入力された値と一緒に表示されてる文字もすべて保存されます。「1」を指定するか省略すると入力された文字だけが保存されます。
そして、3番目のセクションは、定形入力書式に含まれるスペースを示すための文字です。ダブルクォーテーションで囲む必要があります。

その他の定形入力で使える文字については、下記のサイトを参考にしてみてください。
TextBox.InputMask プロパティ (Access) | MSDN


実行結果







2017年11月28日

【Access】テキストボックスのIMEモードを切り替える


テキストボックスのIMEモードの切り替え方法です。

たとえば、このようなフォームにテキストボックス(textName、textTel、textAddress)が貼り付けてあるとします。




これらのテキストボックスのIMEモードを設定するには次のように記述します。
Private Sub Form_Load()

    'ひらがなモード
    Me.textName.IMEMode = acImeModeHiragana
    
    '半角英数モード
    Me.textTel.IMEMode = acImeModeAlpha
    
    'ひらがなモード
    Me.textAddress.IMEMode = acImeModeHiragana
    
End Sub
テキストボックスのIMEModeプロパティに値を指定することでモードを切り替えることが出来ます。


IMEModeプロパティで指定できる値は次ようになっています。
定数説明
acImeModeNoControlIME 入力モードを指定しません。(既定値)0
acImeModeOnIME 入力モードをオンにします。1
acImeModeOffIME 入力モードをオフにします。2
acImeModeDisableIME 入力モードを使用できなくします。3
acImeModeHiragana全角ひらがなを指定します。4
acImeModeKatakana全角カタカナを指定します。5
acImeModeKatakanaHalf半角カタカナを指定します。6
acImeModeAlphaFull全角英数を指定します。7
acImeModeAlpha半角英数を指定します。8
acImeModeHangulFull全角ハングルを指定します。9
acImeModeHangul半角ハングルを指定します。10


実行結果







2017年11月27日

【Access】テキストボックスに複数行入力できるようにする


テキストボックスは初期状態だと1行しか入力できないのですが、設定で複数行入力できるようになります。

たとえば、このようなフォームにテキストボックス(textMemo)が貼り付けてあるとします。


このテキストボックスを複数行入力できるようにするには次ように設定を行います。
Private Sub Form_Load()

    Me.textMemo.EnterKeyBehavior = True
    
End Sub


実行結果







2017年11月24日

【Access】チェックボックスの値を設定する


チェックボックスの値は、Valueプロパティで設定します。

たとえば、フォームを開いたときにチェックボックスの初期値を設定するには次にように行います。
Private Sub Form_Load()

    '初期値設定
    Me.checkBox1.Value = True
    Me.checkBox2.Value = False
    Me.checkBox3.Value = True
    
End Sub
チェックボックスは、Trueでチェックが入っている状態、Falseでチェックが入っていない状態を表します。

2017年11月23日

【Access】チェックボックスの値を取得する



チェックボックスの値を取得する方法です。

たとえば、このようなフォームにチェックボックス(checkBox1~3)とボタン(buttonOrder)が貼り付けてあるとします。


このボタンをクリックしたときに、チェックが入っているチェックボックスのラベルのキャプションをメッセージボックスに表示してみます。
Private Sub buttonOrder_Click()

    Dim msg As String
    
    If Me.checkBox1.Value Then
        
        msg = Controls(Me.checkBox1.LabelName).Caption & vbCrLf
        
    End If
    
    If Me.checkBox2.Value Then
    
        msg = msg & Controls(Me.checkBox2.LabelName).Caption & vbCrLf
        
    End If
    
    If Me.checkBox3.Value Then
    
        msg = msg & Controls(Me.checkBox3.LabelName).Caption
        
    End If
    
    MsgBox msg
    
End Sub
チェックボックスの値は、Valueプロパティで取得することが出来ます。チェックが入っている場合はTrue、入っていない場合はFalseになります。




ちなみに各チェックボックスはフォーム読み込み時にオフにしています。
Private Sub Form_Load()

    '初期設定(OFF)
    Me.checkBox1.Value = False
    Me.checkBox2.Value = False
    Me.checkBox3.Value = False
    
End Sub


実行結果


注文ボタンをクリックすると、








2017年11月21日

【Access】トグルボタンのベベル効果を設定する


トグルボタンのベベル効果の設定です。

ベベル効果は次の表のとおりとなっています。
効果
0なし
1
2額縁風
3交差
4クールスラント
5角度
6ソフトラウンド
7浮き上がり
8スロープ
9切り込み
10スケール
11ハードエッジ
12アールデコ


実際のイメージは次のような感じになります。

0 なし


Me.toggle1.Bevel = 0
Me.toggle1.Caption = "なし"


1 円


Me.toggle1.Bevel = 1
Me.toggle1.Caption = "円"


2 額縁風


Me.toggle1.Bevel = 2
Me.toggle1.Caption = "額縁風"


3 交差


Me.toggle1.Bevel = 3
Me.toggle1.Caption = "交差"


4 クール スラント


Me.toggle1.Bevel = 4
Me.toggle1.Caption = "クールスラント"


5 角度


Me.toggle1.Bevel = 5
Me.toggle1.Caption = "角度"


6 ソフト ラウンド


Me.toggle1.Bevel = 6
Me.toggle1.Caption = "ソフトラウンド"


7 浮き上がり


Me.toggle1.Bevel = 7
Me.toggle1.Caption = "浮き上がり"


8 スロープ


Me.toggle1.Bevel = 8
Me.toggle1.Caption = "スロープ"


9 切り込み


Me.toggle1.Bevel = 9
Me.toggle1.Caption = "切り込み"


10 スケール


Me.toggle1.Bevel = 10
Me.toggle1.Caption = "スケール"


11 ハード エッジ


Me.toggle1.Bevel = 11
Me.toggle1.Caption = "ハードエッジ"


12 アール デコ


Me.toggle1.Bevel = 12
Me.toggle1.Caption = "アールデコ"


<関連記事>
【Access】トグルボタンのオン・オフのときの表示を変える






2017年11月20日

【Access】トグルボタンのオン・オフのときの表示を変える


トグルボタンのオン・オフのときの表示を変える方法です。

たとえば、このようなフォームにトグルボタンが貼り付けてあるとします。


このトグルボタンをオン・オフしたときに、ボタンのキャプションと前景色を変更するには次のように記述します。
Private Sub toggle1_AfterUpdate()

    If Me.toggle1.Value Then
        'ON
        Me.toggle1.Caption = "ON"
        Me.toggle1.ForeColor = RGB(255, 0, 0)
    Else
        'OFF
        Me.toggle1.Caption = "OFF"
        Me.toggle1.ForeColor = RGB(0, 0, 0)
    End If
    
End Sub
イベントは、更新後処理です。
ボタンが押されているか押されてないかは、Valueプロパティで判断します。
ValueがTrueなら押されている。ValueがFalseなら押されていないことになります。

2017年11月17日

【Access】タブコントロールでタブにマウスカーソルを重ねたときに文字色を変える


タブコントロールでタブにマウスカーソルを重ねたときに文字色を変える方法です。

たとえば、このようなタブコントロールが貼り付けてあるフォールがあるとします。



このタブコントロールのタブにマウスカーソルを重ねたときに文字色を「赤」にするには次のように記述します。
Private Sub Form_Load()

    Me.tabCtrl.HoverForeColor = RGB(255, 0, 0)
    
End Sub

実行結果