Excel VBA質問箱 IV

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

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


38753 / 76732 ←次へ | 前へ→

【43112】Re:PGを流し終わった後も記述されたデー...
回答  neptune  - 06/10/2(月) 16:10 -

引用なし
パスワード
   ▼よっシー さん:
>お世話になります。
>PGを流し終わった後も
>以下のType文の形式で、記述されたデータを保存しておき、また、後日、必要に
>応じて集計処理を行いたいのですか、PGを流し終わった後もそのデータを
>メモリに格納しておく方法がわかりません。
後日なら保存はメモリにはしません。物理的にHDDに保存します。
書き込み、読み出しのサンプルです。

Public Type PEAMTRX
    N1(2) As Long
    N2(2) As Long
    N3 As Double
    N4 As Integer
    N5 As Double
End Type

Sub savedata()
'100個のデータを書き込みます
Dim typBuf(1 To 100) As PEAMTRX
Dim sPath As String
Dim fNum As Long
Dim I As Long, recLen As Long
  'サンプルデータを作るだけ
  For I = 1 To 100
    With typBuf(I)
      .N1(1) = 1 + I
      .N2(2) = 2 + I
      .N3 = 3 + I
      .N4 = 4 + I
      .N5 = 5 + I
    End With
  Next I
  '書き込み
  recLen = Len(typBuf(0))
  sPath = "D:\MyDocument2\Doc\db.dat" '自分の環境に合わせて変更
  fNum = FreeFile()
  Open sPath For Random As #fNum Len = recLen
  For I = 1 To 100
    Put #fNum, I, typBuf(I)
  Next I
    
  Close #fNum
End Sub

Sub readRec()
Dim typBuf As PEAMTRX
Dim sPath As String
Dim fNum As Long
Dim I As Long, recLen As Long

  recLen = Len(typBuf)
  sPath = "D:\MyDocument2\Doc\db.dat"  '自分の環境に合わせて変更
  fNum = FreeFile()
  
  '80番目のレコードを取得します。
  Open sPath For Random As #fNum Len = recLen
  Get #fNum, 80, typBuf
  Close #fNum
End Sub

0 hits

【43103】PGを流し終わった後も記述されたデータを... よっシー 06/10/2(月) 12:54 質問
【43112】Re:PGを流し終わった後も記述されたデー... neptune 06/10/2(月) 16:10 回答
【43115】Re:PGを流し終わった後も記述されたデー... よっシー 06/10/2(月) 17:18 お礼

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