Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1312 / 9994 ←次へ | 前へ→

【11980】Re:複数サブフォームのエクスポート
回答  小僧  - 11/4/27(水) 11:11 -

引用なし
パスワード
   ▼てん さん:
こんにちは。

> 2回目以降は、フィールド名だけで、データを持ってきません。。。
> フォームは開いたままの状態です。

こちらでも同じ事象が発生しました。
CopyFromRecordset する前に Recordset を
先頭に持ってくる処理を入れてあげた方が良さそうですね。

rst.MoveFirst
.Range("A2").CopyFromRecordset Data:=rstt


> 記述方法で、改善したほうがいいところなどありましたら

C:\data\test.xls は必ずシートが2枚以上ありますでしょうか。
また、シート名は Sheet1、Sheet2 固定なのでしょうか。

上記の様な箇所がはっきりしないと何とも言えませんが
もうちょっとすっきりしたコードにできるかもしれません。

  For i = 1 To 2
    Select Case i
      Case 1
        Set rst = Me![SubA].Form.RecordsetClone
      Case 2
        Set rst = Me![SubB].Form.RecordsetClone
    End Select
    
    rst.MoveFirst
    With wkb.Worksheets(i)
    '既存データ消去
      .Range("A1").CurrentRegion.ClearContents
    '項目名 & データセット
      For cnt = 1 To rst.Fields.Count
        .Cells(1, cnt).Value = rst.Fields(cnt - 1).Name
      Next
      .Range("A2").CopyFromRecordset Data:=rst
    End With
  Next i

552 hits

【11978】複数サブフォームのエクスポート てん 11/4/20(水) 18:27 質問[未読]
【11979】Re:複数サブフォームのエクスポート てん 11/4/21(木) 16:07 発言[未読]
【11980】Re:複数サブフォームのエクスポート 小僧 11/4/27(水) 11:11 回答[未読]

1312 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078193
(SS)C-BOARD v3.8 is Free