![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
VB初心者です。
3レコードからなる90バイトのバイナリーファイルの
最後のレコードだけを上書きしたいのですが、うまく
いきません。どう書けば良いのでしょうか?
宜しくお願い致します。
'------------------------------------------------
Public Type REC_INFORMATION
AA As Long
BB As Single
CC As Single
DD As Single
EE As Single
FF As Single
GG As Single
HH As Integer
End Type
Public RecInfo As REC_INFORMATION
'-------------------------------------------------------------
Dim ByteCNT as Long
RecInfo.AA = CLng("123")
RecInfo.BB = CSng("123")
RecInfo.CC = CSng("123")
RecInfo.DD = CSng("123")
RecInfo.EE = CSng("123")
RecInfo.FF = CSng("123")
RecInfo.GG = CSng("1")
RecInfo.HH = CInt("1")
Open "c:\TEST.bin" For Binary As #1
ByteCNT = LOF(1)
Seek #1, (ByteCNT - 29)
Put #1, , RecInfo
Close #1
No.3
- 回答日時:
#1です。
GETしているのであればシーク位置が移動するため再度SEEKする必要があると思います。
しかし、#2さんの言われるようにRandomでレコード単位でされたほうがいいですよ!
No.1
- 回答日時:
出来るような気がするのですが・・・
どのように出来ないのか、補足願います。
この回答への補足
失礼致しました。補足致します。
一度以前のファイルの最後のレコードのRecInfo.AAを取得し、
今回取得した123と同一であれば上書き,違うのもであればファイルの最後に新しく今回のレコードと追加するという仕様です。
そのコーディングの途中段階であり、"GET"している部分が抜けていました。この先がうまくできないので困っています。
宜しくご指導願います。
'--------------------------------
Open "c:\TEST.bin" For Binary As #1
ByteCNT = LOF(1)
Seek #1, (ByteCNT - 29)
Get #1, , RecInfo.AA '補足部分
Put #1, , RecInfo
Close #1
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Excel(エクセル) エクセルで同じ数字同士を自動で線で結ぶVBAを教えてください 6 2022/04/26 23:13
- 英語 We examined the rungs of every chair in the hotel, 1 2022/10/02 11:27
- Excel(エクセル) バイナリー演算を勉強したい 1 2023/04/19 14:17
- Visual Basic(VBA) vbaの計算 if elseと範囲について 6 2022/11/26 01:49
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Excel(エクセル) VBAの指示の内容 昨日こちらでご教示頂いたのですが初心者な為、一つ一つの指示が何をやっているのかわ 2 2022/10/25 18:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
レコードセット(ADO.Recordset)...
-
ファイル書込みで一行もしくは...
-
レコードが存在しなかった場合
-
ADO VBA 実行時エラー3021
-
ACCESSで大量の更新を行うと「...
-
カレントレコードが無い事を判...
-
ヘッダレコードとトレーラレコ...
-
データセットのレコード更新が...
-
レコード長を数えてくれる関数
-
DataGridViewの、選択されてい...
-
サブレンジ分割されたNDB(富士...
-
クラスモジュールを使ったレコ...
-
差し込み印刷のレコード数について
-
Excel VBA読み込みで文字化けが
-
バイナリーファイルの追記
-
JSPのNULLレコード表示について...
-
マルチレイアウト
-
Line Inputで文字化け(助けて...
-
COBOLでのランダムアクセス
-
DataGridViewにてセル以外をク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ADO VBA 実行時エラー3021
-
ファイル書込みで一行もしくは...
-
レコードが存在しなかった場合
-
アクセスでレポートの1印刷内...
-
JSPのNULLレコード表示について...
-
カレントレコードが無い事を判...
-
DataGridViewの、選択されてい...
-
差し込み印刷のレコード数について
-
ACCESSで大量の更新を行うと「...
-
DataGridViewの内容をDBに反映...
-
Access でレコードセレクタが押...
-
固有レコード識別子の選択とは
-
レコードセット(ADO.Recordset)...
-
Access を×ボタンで閉じ...
-
DataGridViewにてセル以外をク...
-
ヘッダレコードとトレーラレコ...
-
ワードの差込印刷で教えて下さ...
-
サブレンジ分割されたNDB(富士...
-
データセットのレコード更新が...
-
[VBA] ADOの Clone と AddNew
おすすめ情報