アプリ版:「スタンプのみでお礼する」機能のリリースについて

ACCESS2007 で

テーブル  T_リスト
name      cate
aaa       123
sss       543
rtyy      45t4

フォーム 顧客があり

リスト作成ボタンがあります

フォーム顧客の中に フォーム電話帳サブフォームがあり
データソースはT_リストです
その都度手動でフィルタをかける作業をします

リスト作成ボタンを押すとフィルタで抽出したデータだけを
CSVに書き出したいと思っています。

下記実行しましたが、

T_リストの一行目のデータしか書き出しません

DoCmd.OpenForm ("電話帳サブフォーム")でフォームを出さずに実行したいです

どなたかよいアドバイスをお願いします。



Private Sub コマンド1_Click()

Dim F As Variant
Dim Field1 As String
Dim Field2 As String
Dim M As Double
Dim i As Double


Field1 = "name"
Field2 = "cat1"


M = Me![電話帳サブフォーム].Form.Recordset.RecordCount


Open "C:\ListMaker\out.csv" For Output As #1


Write #1, Field1, Field2


DoCmd.OpenForm ("電話帳サブフォーム")


Me.[電話帳サブフォーム].SetFocus

For i = 1 To M
DoCmd.GoToRecord acDataForm, "Me.電話帳サブフォーム", acGoTo, i

Write #1, Me![電話帳サブフォーム]![name]
i = i + 1
Next
DoCmd.GoToRecord , , acFirst

Close #1

End Sub

A 回答 (1件)

フォーム名/コントロール名は同じでしょうか。


以下でどうなりますか。

Private Sub コマンド1_Click()
  Dim Field1 As String
  Dim Field2 As String

  Field1 = "name"
  Field2 = "cat1"

  With Me![電話帳サブフォーム].Form.RecordsetClone
    If (.RecordCount > 0) Then
      .MoveFirst
      Open "C:\ListMaker\out.csv" For Output As #1
      Write #1, Field1, Field2
      While (Not .EOF)
        Write #1, .Fields(Field1), .Fields(Field2)
        .MoveNext
      Wend
      Close #1
    End If
  End With
End Sub



Me![電話帳サブフォーム] は、サブフォームコントロールになります。
    • good
    • 0
この回答へのお礼

30246kiku様

出来ましたッ!

頂いたコードをそのままコピぺ一発で希望通りの結果になりました。

本当に感謝感激です、

有難う御座いました!!

お礼日時:2012/02/23 08:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A