Microsoft Access 掲示板

テキストボックスにうっすら表示させておく / 6

13 コメント
views
4 フォロー
6
hatena 2020/10/09 (金) 09:30:20 修正

汎用関数は、

Public Function Titleph(txtbox As control, placeHolder As String)

    If txtbox.Value <> "" Then
       Titleph = txtbox.Value
    Else
       Titleph = placeHolder 
    End If
    
End Function

テキストボックスのコントロールソースに、下記のように設定することになります。

=Titleph([名前],"名前")

通報 ...
  • 7
    シソンヌ 2020/10/09 (金) 09:57:48 0029a@1c915 >> 6

    早速ありがとうございました。
    上記VBAをコピーして、コントロールソースは「名前」の部分だけ変えて実装してみましたが
    「#Name?」と表示されます。
    色々試してみたこととしては、「Mtxtboxをtxtboxに変える」(宣言での変数と文中での変数が異なっていていいのかわからず??)「標準モジュールにおいたり、該当のフォームのモジュールにおいたり」です。
    ちなみに、コントロールソースは自動で下記のように[]がついておりました。
    ==Titlepath

    何か勘違いしておりますでしょうか?

    8
    シソンヌ 2020/10/09 (金) 09:58:49 0029a@1c915 >> 7

    失礼しました。コントロールソースの自動変換後は下記になります。

    =[=Titlepath]([名前],"名前")
    
    9
    シソンヌ 2020/10/09 (金) 10:12:16 0029a@1c915 >> 7

    コントロールソースが間違って「Titlepath」になっていたことに気づきました…「Titleph」に変更したところ、エラーが「#Type!」になりました。度々すみません。

  • 11

    =[=Titlepath]([名前],"名前")

    Titlepath は Titleph に修正済みとして、その前の全角の を半角の = に変更してください。
    (前の私の回答も全角になってましたので修正しておきました。)

    =Titleph([名前],"名前")