
フォームのテキストボックスに関数を入れて表示するとき、
例1 貸出日のフィールドから曜日を表示させる
=Format([貸出日],"aaa") とテキストボックスに入力。
例2 D001のテーブルにある会員番号のフィールドの最大値を表示させる
=DMax("会員番号","D001") とテキストボックスに入力。
例2でフィールド名に付けるのが[ ]でなく""なのはなぜでしょうか? フィールドを使うならすべて[ ]でくくればいいと思ってましたが""でないとだめなようですが、なぜか教えてください。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
<D001>
ID___会員番号
1____0001
2____0002
3____0003
質問者の意図しているように、DMax関数の引数にテキストボックスを指定しても構いません。
ただし、この場合は、下記 DBMax関数を見れば判るようにフィールド名(列名)を指示。
ですから、フォームに[フィールド名]というテキストボックスを配置し、値='会員番号'であることが肝心。
実際に、テストした結果を次に示します。
ちゃんと、最大値をイミディエイトウィンドウに表示しています。
テキストボックスを書けば、その値が採用されます。
テキストボックスの名前は値ではありませんから当然のこと。
ここら辺りを誤解しているだけですね。
<フォーム>
=========================
フィールド名:[会員番号]
=========================
Private Sub コマンド0_Click()
Debug.Print DMax([フィールド名], "D001")
End Sub
[イミディエイト]
3
Public Function DBMax(ByVal strField As String, _
ByVal strTable As String, _
Optional strWhere As String = "") As Variant
On Error GoTo Err_DBMax
Dim N
Dim strQuerySQL As String
Dim rst As ADODB.Recordset
Set rst = New ADODB.Recordset
strQuerySQL = "SELECT MAX(" & strField & ") FROM " & strTable
If Len(strWhere) > 0 Then
strQuerySQL = strQuerySQL & " WHERE " & strWhere
End If
With rst
.Open strQuerySQL, _
CurrentProject.Connection, _
adOpenStatic, _
adLockReadOnly
If Not .BOF Then
.MoveFirst
N = Nz(.Fields(0), 0)
End If
End With
Exit_DBMax:
On Error Resume Next
rst.Close
Set rst = Nothing
DBMax = N
Exit Function
Err_DBMax:
MsgBox "SELECT 文の実行時にエラーが発生しました。(DBMax)" & Chr$(13) & Chr$(13) & _
"・Err.Description=" & Err.Description & Chr$(13) & _
"・SQL Text=" & strQuerySQL, _
vbExclamation, " 関数エラーメッセージ"
Resume Exit_DBMax
End Function
No.1
- 回答日時:
Formatの第2引数、DMaxの全引数はテキストで与えると
構文で決まっているからです
[]は名前をあらわす文字を囲むときに使われます
通常は省略しても問題ありませんが
名前の中に問題のある文字を使っている場合には必須です
下のいずれもOKです
=Format(貸出日,"aaa")
=DMax("[会員番号]","D001")
この回答への補足
>Formatの第2引数、DMaxの全引数はテキストで与えると
構文で決まっているからです
う~ん、はじめから""と入力すると決まっているということでしょうか??
初心者ですいません。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelからAccessデータを検索す...
-
WORD差し込み印刷:日付の処理 ...
-
アクセスで入力したデータの順...
-
ファイルメーカ 集計の表示
-
accessのフィールドに10桁の数...
-
ピボットテーブルで再表示したい
-
Access フィールド内の値で、...
-
MS-WORDで、あるフィールドに入...
-
「#エラー」の回避
-
Accessでボタンを押すと今日の...
-
A1、A2、A3・・・とデータを増...
-
アクセス Access 時間の引き算
-
差し込み文書のルールで if the...
-
Wordでページ番号を計算式で入...
-
ACCESSにEXCELのハイパーリンク...
-
ファイルメーカーでの西暦から...
-
FMPro7で繰り返しフィールドの...
-
FileMakerで外部保存PDFを開く方法
-
WORDフィールドコード一括編集
-
FileMakerで画像をまとめて書き...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelからAccessデータを検索す...
-
ファイルメーカ 集計の表示
-
「#エラー」の回避
-
アクセスで入力したデータの順...
-
accessのフィールドに10桁の数...
-
「フィールド更新」が表示されない
-
差し込み文書のルールで if the...
-
MS-WORDで、あるフィールドに入...
-
ACCESSでデータ変更箇所が分か...
-
FileMakerで、フィールドの値が...
-
WORD差し込み印刷:日付の処理 ...
-
Accessフォームで平均値の出し...
-
Accessでボタンを押すと今日の...
-
アクセス 入力した文字を自動...
-
Accessで値がnullの場合は計算...
-
FileMakerで画像をまとめて書き...
-
ファイルメーカー5.0でCOUNTIF!!
-
A1、A2、A3・・・とデータを増...
-
Access フィールド内の値で、...
-
ファイルメーカーによるリスト...
おすすめ情報