「列がみつかりません 住所録ID」のエラーをなくすには


なお  2003-12-16 17:48:12  No: 110762  IP: [192.*.*.*]

○下記のPGMの「dbgSub.Columns("住所録ID").Width = 60 * 15
    」で「列が見つかりません」とのエラーメッセージが出ます。
どうしてですか?

    Dim rs As New ADODB.Recordset
    Dim strsql      As String
 
    Dim wCD_CLASS As String
    
    
    If cboGyosyu.Text = "" Then
        wCD_CLASS = ""
    Else
        wCD_CLASS = cboGyosyu.Text
    End If
  
  strsql = "SELECT 住所録ID,会社名,支社名,更新日  FROM 取引先会社マスター"
    rs.Open strsql, cn, adOpenStatic, adLockOptimistic
    
    Set dbgSub.DataSource = rs
    
    Debug.Print rs("会社名")
    
    dbgSub.Columns("住所録ID").Width = 60 * 15
    dbgSub.Columns("会社名").Width = 60 * 15
    dbgSub.Columns("支社名").Width = 60 * 15
    dbgSub.Columns("最終変更日").Width = 60 * 15

編集 削除
岡田 之仁  2003-12-16 18:16:35  No: 110763  IP: [192.*.*.*]

strsql = "SELECT 住所録ID,会社名,支社名,更新日  FROM 取引先会社マスター"
となっている部分で・・・
カラム名は、住所録ID,会社名,支社名,更新日
となります。

では、
    dbgSub.Columns("住所録ID").Width = 60 * 15
    dbgSub.Columns("会社名").Width = 60 * 15
    dbgSub.Columns("支社名").Width = 60 * 15
    dbgSub.Columns("最終変更日").Width = 60 * 15
となっている部分で、明示的におかしいのは、
    dbgSub.Columns("最終変更日").Width = 60 * 15
ここです・・・
最終変更日と言うカラム名は、SELECT時点では指定されて
いません。
dbgSub.Columns("住所録ID").Width = 60 * 15
ここでおかしい・・・とのことですが、必すしもエラー箇所
がアナウンスされない場合がありますので、ご確認下さい。

以上。

編集 削除
なお  2003-12-16 18:33:17  No: 110764  IP: [192.*.*.*]

岡田 之仁  さま
ありがとうございます。

ただそれも試してはいたのですが。。。だめでした。
あくまでも
    dbgSub.Columns("住所録ID").Width = 60 * 15
    dbgSub.Columns("会社名").Width = 60 * 15
    dbgSub.Columns("支社名").Width = 60 * 15
    dbgSub.Columns("最終変更日").Width = 60 * 15
は、項目名になるだけではないのですか?

編集 削除
なお  2003-12-16 19:06:02  No: 110765  IP: [192.*.*.*]

office2000だから?
対応方法ありますか?

編集 削除
岡田 之仁  2003-12-16 19:15:25  No: 110766  IP: [192.*.*.*]

解決策は必ずあるはずです。

ですが、ことデータベースの場合、動作確認する方法が
他人はありません。

環境を共有することもできませんので・・・
あくまで可能性と言う部分で、チャレンジして頂くしか
どうしようもありませんが・・・

※  では、ひとつ試して下さい。
    フィールドの指定を、名称ではなく、本来の配列番号
    として指定してみて結果がどうなるか、ご確認下さい。

    具体的には・・・

    dbgSub.Columns(0).Width = 60 * 15
    dbgSub.Columns(1).Width = 60 * 15
    dbgSub.Columns(2).Width = 60 * 15
    dbgSub.Columns(3).Width = 60 * 15

    とするやり方です。

以上。

編集 削除