過去ログ

                                Page     310
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
   通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫   
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
 ▼InputBoxについて  gio 03/6/21(土) 12:21
   ┗Re:InputBoxについて  イケガミ 03/6/21(土) 15:02
      ┗Re:InputBoxについて  gio 03/6/21(土) 16:49

 ───────────────────────────────────────
 ■題名 : InputBoxについて
 ■名前 : gio
 ■日付 : 03/6/21(土) 12:21
 -------------------------------------------------------------------------
   Win2000:
Access2002:

質問です。
オートフォームで作成したフォームに"upname"という名のテキストボックスがあり、
これにテーブルの"name"フィールドの値が入ってきます。

そして、ボタンを押したときにInputBoxを表示させデフォルト値でテキストボックス
の値を入力しているのですが、このとき"OK"を押したときは問題なくInputBoxの値が
テーブルの"name"フィールドに更新されるが、"キャンセル"を押したときに文字列("")
を返してしまいテーブルの"name"フィールドの値も""になってしまいます。

ヘルプを見たら、InputBoxでキャンセルを押したときは文字列("")を返すというのは
分かったのですがキャンセルのときに値を制御することはできないのですか?
文字列("")ではなくInputBoxのデフォルトの文字を入力したいです。
無理なようならあきらめます。どなたか教えてください。お願いします。

Dim name As String
Dim Iput As String

  name = Me.upname.Value
  Iput = InputBox("名前を入力してください。", , name)
  If Iput <> name Then
    Me.upname.Value = Iput
  Else
    Me.upname.Value = name
  End If

 ───────────────────────────────────────  ■題名 : Re:InputBoxについて  ■名前 : イケガミ  ■日付 : 03/6/21(土) 15:02  -------------------------------------------------------------------------
   >  If Iput <> name Then

If Iput <> name And Iput <> "" Then

ではどうでしょうか?

 ───────────────────────────────────────  ■題名 : Re:InputBoxについて  ■名前 : gio  ■日付 : 03/6/21(土) 16:49  -------------------------------------------------------------------------
   ありがとうございました。

そうか。。。キャンセルのとき入力された値が""と
指定すればいいのですね。


Dim name As String
Dim Iput As String

  name = Me.upname.Value
back:
  Iput = InputBox("Welcome!" & vbCrLf & "名前を入力してください。" & vbCrLf & "* 12文字以下で入力してください。", "playername", name)
  If Len(Iput) <= 12 Then
    If Iput <> "" Then
      Me.upname.Value = Iput
    Else
      Me.upname.Value = name
    End If
  Else
    MsgBox "12文字以下で入力してください", , "check"
    GoTo back
  End If


こんな感じで出来上がってくれました。
ほんとにこんなシロート君にレス感謝です。どうもでした。

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━    通常モードに戻る  ┃  INDEX  ┃  ≪前へ  │  次へ≫    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━                                 Page 310