!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part66
https://mevius.5ch.net/test/read.cgi/tech/1589085825/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Excel VBA 質問スレ Part67
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-3+hg)
2020/06/26(金) 02:01:29.56ID:uDfmpksE0242234 (ワッチョイ 8a01-c9XW)
2020/07/05(日) 08:05:40.42ID:Mq9FuBzw0 >>240
どうもです。
どうもです。
243234 (ワッチョイ 8a01-c9XW)
2020/07/05(日) 08:06:29.51ID:Mq9FuBzw0 >>241
どうもです。
どうもです。
244デフォルトの名無しさん (ワッチョイ 8f5f-ewff)
2020/07/05(日) 11:36:58.35ID:CJtrxhlB0 >>242
呼び出しは、可読性考慮すると文頭にCall書いた方がいいよ
呼び出しは、可読性考慮すると文頭にCall書いた方がいいよ
245デフォルトの名無しさん (ワッチョイ 0a2f-+ZV3)
2020/07/05(日) 13:58:43.83ID:U1BgWcwt0 >>207
VBAでやっても6時間はかかりすぎな気がするが
マシンスペックとコード晒してみ
それ、計算式でやって再計算に1時間以上かかるのか?
当然試してるよな
マルチプロセスもどうやってやったのか気になるが
俺なら間違いなくDBにつっこんでSQLでやる
そういえばエクセルシートなりCSVなりに対してSQL投げる方法がいくつかあったけど
それは試したのか?
VBAでやっても6時間はかかりすぎな気がするが
マシンスペックとコード晒してみ
それ、計算式でやって再計算に1時間以上かかるのか?
当然試してるよな
マルチプロセスもどうやってやったのか気になるが
俺なら間違いなくDBにつっこんでSQLでやる
そういえばエクセルシートなりCSVなりに対してSQL投げる方法がいくつかあったけど
それは試したのか?
246デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/05(日) 15:07:25.29ID:2yUokYO9d247デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/05(日) 15:11:46.86ID:BTTSshKd0248デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/05(日) 15:16:11.04ID:2yUokYO9d249デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/05(日) 15:22:54.54ID:2yUokYO9d マルチプロセスはExcel.Application8個(自分含めて)呼び出して、自分のブック開いて別CPUにやらせるプロシージャをApplication.OnTimeで呼び出したかSetTimerで呼び出したかだったんじゃないかな。
細かい連携しないで済むようにしてたと思う。
複雑なことはやってねえよ。
細かい連携しないで済むようにしてたと思う。
複雑なことはやってねえよ。
250220 (ワッチョイ 87cc-ERT+)
2020/07/05(日) 19:59:50.06ID:Y6miK3VP0251デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/05(日) 21:27:28.28ID:2yUokYO9d >>236
う〜ん、分からん。
俺もやってみたんだが、同じような時間だった。
観測値はテキ卜一に0〜100をランダムで書き込み。
観測出来なかった値は当時の記憶を頼りに9999とした。
確か9998もあったけど変わらんだろう。
前に書いた制約というかは、1年分のファイルが50〜60個ぐらいだったということ。
つまり県ごとのファイルで観測地が多い所は複数ファイルって感じ。
だから実際は行頭に観測地名が入って、その後に何かの数値とかが幾つかあって日付、観測値という具合だった。
年ごとのファイルが完全に固定フォーマットで無かったか、俺が信用してなかったか、観測値名で検索してたと思う。
そこから365日分は連続してたと思うけど。
それでも6時間は掛からんような気がしてきた。
もっと複雑なことやってたのかなあ。
どっちにしても後だしで申し訳ない。
う〜ん、分からん。
俺もやってみたんだが、同じような時間だった。
観測値はテキ卜一に0〜100をランダムで書き込み。
観測出来なかった値は当時の記憶を頼りに9999とした。
確か9998もあったけど変わらんだろう。
前に書いた制約というかは、1年分のファイルが50〜60個ぐらいだったということ。
つまり県ごとのファイルで観測地が多い所は複数ファイルって感じ。
だから実際は行頭に観測地名が入って、その後に何かの数値とかが幾つかあって日付、観測値という具合だった。
年ごとのファイルが完全に固定フォーマットで無かったか、俺が信用してなかったか、観測値名で検索してたと思う。
そこから365日分は連続してたと思うけど。
それでも6時間は掛からんような気がしてきた。
もっと複雑なことやってたのかなあ。
どっちにしても後だしで申し訳ない。
252デフォルトの名無しさん (ワッチョイ 8a01-21HI)
2020/07/05(日) 22:26:04.09ID:ys79fvH60253デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/05(日) 22:29:31.22ID:2yUokYO9d254238 (ワッチョイ 872c-+ZV3)
2020/07/05(日) 22:43:00.48ID:R1IME3L+0 ファイル名の先頭に、2020_ を付けるぐらい、robocopy で出来ないのか?
255デフォルトの名無しさん (ワッチョイ 8a01-21HI)
2020/07/05(日) 22:49:17.55ID:ys79fvH60 2016ならよほど変なことをしてないと数時間とかかからんと思う
256デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/05(日) 23:53:51.99ID:C4Jqu0Op0 2020_2020_2020_2020・・・・
257デフォルトの名無しさん (ワッチョイ ea24-bNAA)
2020/07/06(月) 00:43:25.66ID:Cn1gvhVh0 officeが32bitだったというオチは?
258デフォルトの名無しさん (オッペケ Sr23-aBdg)
2020/07/06(月) 06:39:12.08ID:NN5xIHVpr workbookとworksheetって何が違うか。
259デフォルトの名無しさん (ワッチョイ 8a01-21HI)
2020/07/06(月) 07:15:30.65ID:5mzvDM1u0 キングジムファイルと綴じられてる一覧表って感じかな
260デフォルトの名無しさん (ワッチョイ 27ce-BXkI)
2020/07/06(月) 08:12:33.04ID:XvhlV03D0 32bitと64bitで計算スピードの差は2倍もないような
261デフォルトの名無しさん (オッペケ Sr23-aBdg)
2020/07/06(月) 08:39:32.35ID:NN5xIHVpr Activesheet.cells(1.1).Activate
Activesheet.Paste
は上手くいくのに、
Activesheet.cells(1.1).Paste
は何でダメなんですか?
Activesheet.Paste
は上手くいくのに、
Activesheet.cells(1.1).Paste
は何でダメなんですか?
262デフォルトの名無しさん (ワッチョイ 8aea-Qwhy)
2020/07/06(月) 09:18:02.55ID:Ag715axD0 >>261
.pasteは、worsheetのメンバであってrangeやcellsのメンバじゃないから、かな?
.pasteは、worsheetのメンバであってrangeやcellsのメンバじゃないから、かな?
263デフォルトの名無しさん (ワッチョイ 8749-OmMV)
2020/07/06(月) 09:49:31.89ID:Smcv6rvz0 パラメータ Destinationがあるから
ワイはPasteSpecialのほうが好き
ワイはPasteSpecialのほうが好き
264デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/06(月) 12:08:40.63ID:0NryXgvDd265デフォルトの名無しさん (ワッチョイ 87cc-ERT+)
2020/07/06(月) 18:39:32.80ID:XttWreH00 For
処理1
処理2
処理3
処理4
Next
よりも
For
処理1
Next
For
処理2
Next
For
処理3
Next
For
処理4
Next
の方が処理が早い傾向がありますが、そういうものですか?
処理1
処理2
処理3
処理4
Next
よりも
For
処理1
Next
For
処理2
Next
For
処理3
Next
For
処理4
Next
の方が処理が早い傾向がありますが、そういうものですか?
266デフォルトの名無しさん (ワッチョイ 3aba-/RNd)
2020/07/06(月) 19:08:39.04ID:tFUllOPh0267デフォルトの名無しさん (ワッチョイ 3aba-/RNd)
2020/07/06(月) 19:10:33.89ID:tFUllOPh0 てか、もうRubyは徒花だったな。
人気もダダ下がりだし。
人気もダダ下がりだし。
268デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/06(月) 20:45:52.99ID:0NryXgvDd269デフォルトの名無しさん (ワッチョイ 0a2f-+ZV3)
2020/07/06(月) 20:59:38.60ID:aGu/2bZb0270デフォルトの名無しさん (ワッチョイ 3aba-/RNd)
2020/07/06(月) 21:12:06.08ID:tFUllOPh0 >>268
どこでもかしこでもRubyで書いて押し付けてきて、「出来だよ!」っていうオジサンがいるのよ。
WSHスレでは「Rubyおじさん」として有名だった。
が、自分よりスキルの上な奴がコードをうしたら黙り込む。
こんなところにまで出張いてるとはね…。
無視推奨。Rubyはオワコンだし。
どこでもかしこでもRubyで書いて押し付けてきて、「出来だよ!」っていうオジサンがいるのよ。
WSHスレでは「Rubyおじさん」として有名だった。
が、自分よりスキルの上な奴がコードをうしたら黙り込む。
こんなところにまで出張いてるとはね…。
無視推奨。Rubyはオワコンだし。
271デフォルトの名無しさん (アウアウエー Sa82-qC4h)
2020/07/06(月) 21:13:16.26ID:K1goXTAAa じゃあVBAはお爺ちゃんだろ
272デフォルトの名無しさん (ワッチョイ 3aba-/RNd)
2020/07/06(月) 21:17:13.18ID:tFUllOPh0 >>271
VBAは「頼れるジジイ」だろ。何言ってんの?
VBAは「頼れるジジイ」だろ。何言ってんの?
273デフォルトの名無しさん (ワッチョイ 27ce-BXkI)
2020/07/06(月) 21:29:12.52ID:XvhlV03D0274デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/06(月) 22:27:45.01ID:33E9zFJO0 Rubyの話がしたければRubyのスレ行けばいいのにね
275デフォルトの名無しさん (スプッッ Sd4a-tYaB)
2020/07/07(火) 12:27:17.68ID:mk51G87Dd276デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 19:51:41.03ID:CAdbpiIn0 宣伝だろ
277デフォルトの名無しさん (ワッチョイ 8a01-c9XW)
2020/07/07(火) 20:15:33.65ID:2cf+0s2v0 音楽のmidiファイルを作りたい、つまりバイナリファイルを作りたい者です。で、
↓を試してみたいのですが、"C3"にバイナリの配列を書き込まなければいけません。
この場合、どうやってexcelのセルに、バイナリの配列データを書き込むのでしょうか?
https://oshiete.goo.ne.jp/qa/8402512.html
Sub test()
TEMP = Worksheets("Sheet1").Range("C3")
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
For I = 1 To Len(TEMP) Step 2
BIN((I - 1) / 2) = Val("&H" & Mid(TEMP, I, 2))
Next I
Open "1.BIN" For Binary As #1
Put #1, , BIN
Close #1
End Sub
↓を試してみたいのですが、"C3"にバイナリの配列を書き込まなければいけません。
この場合、どうやってexcelのセルに、バイナリの配列データを書き込むのでしょうか?
https://oshiete.goo.ne.jp/qa/8402512.html
Sub test()
TEMP = Worksheets("Sheet1").Range("C3")
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
For I = 1 To Len(TEMP) Step 2
BIN((I - 1) / 2) = Val("&H" & Mid(TEMP, I, 2))
Next I
Open "1.BIN" For Binary As #1
Put #1, , BIN
Close #1
End Sub
278デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/07(火) 20:25:40.74ID:BPFgnJg70 なんでVBAでやるの?
279デフォルトの名無しさん (ブーイモ MMef-aKnn)
2020/07/07(火) 20:27:13.84ID:z4TbLErcM VBAスレだから
280犬丸 ◆MRCYWQz4rc (ワッチョイ 8a01-c9XW)
2020/07/07(火) 20:31:41.96ID:2cf+0s2v0 >>278
和音の構成音(ドレミ・・・)を1つづつセルに入れられるから。
和音の構成音(ドレミ・・・)を1つづつセルに入れられるから。
281デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/07(火) 20:33:47.85ID:BPFgnJg70 なんでdominoとか使わないの?
282デフォルトの名無しさん (ワッチョイ 8a01-c9XW)
2020/07/07(火) 20:34:49.08ID:2cf+0s2v0 あと、PCにインストールされてる開発系はexcelだけだから。
283277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 20:41:28.24ID:2cf+0s2v0 つか、改変させたいmidiファイルが300個位あって、それの欲しいデータのexcelファイルへの読み込みはもう終わったわけ。
あとは、そのデータをちょい改変して、同様な300個のmidiファイルを吐き出すだけなんですよ。
あとは、そのデータをちょい改変して、同様な300個のmidiファイルを吐き出すだけなんですよ。
284277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 20:42:49.00ID:2cf+0s2v0 だから、excelでバイナルファイルを作りたいのです。
285デフォルトの名無しさん (ワッチョイ de02-VQSO)
2020/07/07(火) 21:00:27.95ID:yByKJQAn0 読み込めたなら反対をやればいいんじゃないの
286デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 21:05:07.15ID:CAdbpiIn0 >>283
著作権的にどうなの?
著作権的にどうなの?
287277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 21:10:37.49ID:2cf+0s2v0288デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/07(火) 21:13:27.88ID:BPFgnJg70 じゃあそうすればいいじゃない?
所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?)なんだから
最終的には好きに料理してファイルに吐き出せばいい
ただ、1つのセルにバイナリなんて入れたら手作業で編集なんてしずらくてしょうがないけどな
あとセルの文字数上限もあるだろうし
midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな
所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?)なんだから
最終的には好きに料理してファイルに吐き出せばいい
ただ、1つのセルにバイナリなんて入れたら手作業で編集なんてしずらくてしょうがないけどな
あとセルの文字数上限もあるだろうし
midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな
289デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 21:13:57.80ID:CAdbpiIn0 >>287
ならmidiの編集ソフトが使った方がいいね
ならmidiの編集ソフトが使った方がいいね
290277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 21:14:00.67ID:2cf+0s2v0 >>286
そもそも観賞するためのmidiデータではなく音楽制作に使うツールとしてのmidiデータなんだよね。
そもそも観賞するためのmidiデータではなく音楽制作に使うツールとしてのmidiデータなんだよね。
291デフォルトの名無しさん (ドコグロ MM7f-21HI)
2020/07/07(火) 21:14:32.40ID:/HMzap4UM >>282
C#やVB.NETもあるけど?w
C#やVB.NETもあるけど?w
292277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 21:22:41.71ID:2cf+0s2v0 >>288
> midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな
基礎的な部分は把握してます。
> 所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?)
これがわからないんです。たとえば、4D 54 68 64という16進のデータをexcelの1つのセルに書き込む方法を教えて欲しいのです。
> midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな
基礎的な部分は把握してます。
> 所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?)
これがわからないんです。たとえば、4D 54 68 64という16進のデータをexcelの1つのセルに書き込む方法を教えて欲しいのです。
293277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 21:25:44.85ID:2cf+0s2v0 で、excelの"C3"に、4D 54 68 64を書き込んで>>277のソースを動かして試してみたいんです。
294デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 21:26:04.88ID:CAdbpiIn0 これなんか良いんじゃね
https://openmidiproject.osdn.jp/Sekaiju.html
https://openmidiproject.osdn.jp/Sekaiju.html
295デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 21:29:51.89ID:CAdbpiIn0 midiの規格ってそんな簡単じゃないから素人が扱っても音が切れたりトラックがずれたりして
結局使えないだろ
結局使えないだろ
296デフォルトの名無しさん (ワッチョイ 1e63-LTdq)
2020/07/07(火) 21:32:34.47ID:7cSgkxva0 ExcelのRange#valueにバイト列なんか入るわけないんだから自分がわかりやすいように文字列か数値に勝手に変換して勝手に入れろとしか言えない
297デフォルトの名無しさん (テテンテンテン MMc6-LTdq)
2020/07/07(火) 21:34:29.92ID:MaHOmhaOM Excelでmidiデータを取り扱うなんて常人の発想ではない
たぶんあなた以外に誰も方法はわからないから頑張ってその道の第一人者になって欲しい
たぶんあなた以外に誰も方法はわからないから頑張ってその道の第一人者になって欲しい
298デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/07(火) 21:35:25.31ID:BPFgnJg70 >>292
セルに入れられるのはあくまで文字列ってこと理解してないの?
その例なら「Byte(0):77 Byte(1):84〜」とかいう配列から「4D 54 68 64」という文字列にしなければセルには書き込めない
Byteはそれぞれの数値が入ってるだろうけど、hexかなんかで16進数にしたうえで(編集上必要あるか知らんけど)
join(array, " ")かなんかで1つの文字列にする
くっそ編集しずらいだろうけどな
セルに入れられるのはあくまで文字列ってこと理解してないの?
その例なら「Byte(0):77 Byte(1):84〜」とかいう配列から「4D 54 68 64」という文字列にしなければセルには書き込めない
Byteはそれぞれの数値が入ってるだろうけど、hexかなんかで16進数にしたうえで(編集上必要あるか知らんけど)
join(array, " ")かなんかで1つの文字列にする
くっそ編集しずらいだろうけどな
299デフォルトの名無しさん (ワッチョイ 8ab5-5DWS)
2020/07/07(火) 21:44:56.92ID:tZSrRerM0 前スレのテキストフルスキャンの発想とコード提示してくれた人
改めて言わせて貰う
職場の一大イベントを乗り切ったわこれで
改めて言わせて貰う
職場の一大イベントを乗り切ったわこれで
300デフォルトの名無しさん (ワッチョイ 8ab5-5DWS)
2020/07/07(火) 21:46:02.99ID:tZSrRerM0 改めて多大なるお礼を言わせて貰うが抜けてた
これのおかげですべての可能性が広がったわ
これのおかげですべての可能性が広がったわ
301277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 22:23:53.24ID:2cf+0s2v0 では、すみません。 >>277の質問はなしにして、↓の質問をお願いします。
1、変数に「4D 54 68 64」のバイナリデータを代入するソース
2、中身は「4D 54 68 64」だけのファイル
3、ファイル名は5ch.bin
こんなファイルを作るにはどのようなソースを書けばよいでしょうか?
1、変数に「4D 54 68 64」のバイナリデータを代入するソース
2、中身は「4D 54 68 64」だけのファイル
3、ファイル名は5ch.bin
こんなファイルを作るにはどのようなソースを書けばよいでしょうか?
302277 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 22:29:17.16ID:2cf+0s2v0 >>228
allrenameというフリーソフトを使えばいいのじゃ。
allrenameというフリーソフトを使えばいいのじゃ。
303デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/07(火) 22:32:51.69ID:CAdbpiIn0 >>301
バイナリ編集のソフト使えばいいんじゃね
バイナリ編集のソフト使えばいいんじゃね
304301 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 22:42:26.54ID:2cf+0s2v0 >>303
すみません。 「VBAを使って」でした。
すみません。 「VBAを使って」でした。
305デフォルトの名無しさん (ワッチョイ 0302-WfHi)
2020/07/07(火) 22:43:37.27ID:O/UE8zUS0 もはやExcelを使うことが目的化してる
306デフォルトの名無しさん (ワッチョイ de02-VQSO)
2020/07/07(火) 22:44:27.22ID:yByKJQAn0 それもう読み込んだデータ無意味やん
フォーマット知らんけどセルに書き出せたんならファイルにもいけるやろ
フォーマット知らんけどセルに書き出せたんならファイルにもいけるやろ
307301 (ワッチョイ 8a01-c9XW)
2020/07/07(火) 22:54:30.10ID:2cf+0s2v0 >>306
基礎になるソースさえ教えてもらえれば、そこに色々付け加えてって自分に必要なバイナリファイルが作れるんですよ。
基礎になるソースさえ教えてもらえれば、そこに色々付け加えてって自分に必要なバイナリファイルが作れるんですよ。
308デフォルトの名無しさん (ワッチョイ 1bac-OmMV)
2020/07/07(火) 22:57:06.69ID:BPFgnJg70 まず書く努力をしよう
309デフォルトの名無しさん (スッップ Sdaa-DbYN)
2020/07/07(火) 22:57:22.32ID:0KBHODZEd >>307
そろそろ死ねや
そろそろ死ねや
310デフォルトの名無しさん (ワッチョイ 3a02-ERT+)
2020/07/07(火) 23:05:51.69ID:1TMQwlbY0 Excelの設定もAppDataの中身も場所も変えて無いのに、
下記のように表示されてマクロが読めません!
「起動フォルダーにある個人用マクロブックは記録のために開かれた状態でなければなりません」
下記のように表示されてマクロが読めません!
「起動フォルダーにある個人用マクロブックは記録のために開かれた状態でなければなりません」
311デフォルトの名無しさん (ワッチョイ bbe5-R5kl)
2020/07/07(火) 23:09:31.21ID:exS2x9T+0312デフォルトの名無しさん (アウアウエー Sa13-c9t6)
2020/07/08(水) 00:06:04.08ID:66yUE/saa >>301
「'4D 54 68 64'」シングルかダブルで囲えば良いのでは?
「"4D 54 68 64"」
あるいは
いったんタブ区切りファイルtmp.tsvを途中で
中間ファイルとして介在させたらいいんじゃないですか?
「'4D 54 68 64'」シングルかダブルで囲えば良いのでは?
「"4D 54 68 64"」
あるいは
いったんタブ区切りファイルtmp.tsvを途中で
中間ファイルとして介在させたらいいんじゃないですか?
313デフォルトの名無しさん (ワッチョイ 65ac-OOGl)
2020/07/08(水) 00:14:08.99ID:4BPfKF9s0 ソースくれくれ君だからひんとあろうが自分で書かないよ、こういうやつ
314301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 01:45:46.54ID:gPwSdoJG0 >>312
ありがとうございます。でも、「セルから変数を代入する」は止めました。で、>>277を変形してみたんですけど、↓のドコがまずいんですかね?
Sub test()
Dim TEMP As Variant
Dim I As Variant
Dim BIN As Variant
TEMP = Array(&H4D, &H54, &H68, &H54, &H68, &H64)
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
For I = 1 To Len(TEMP) Step 2
BIN((I - 1) / 2) = Val("&H" & Mid(TEMP, I, 2))
Next I
Open "C:\1.BIN" For Binary As #1
Put #1, , BIN
Close #1
End Sub
ありがとうございます。でも、「セルから変数を代入する」は止めました。で、>>277を変形してみたんですけど、↓のドコがまずいんですかね?
Sub test()
Dim TEMP As Variant
Dim I As Variant
Dim BIN As Variant
TEMP = Array(&H4D, &H54, &H68, &H54, &H68, &H64)
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
For I = 1 To Len(TEMP) Step 2
BIN((I - 1) / 2) = Val("&H" & Mid(TEMP, I, 2))
Next I
Open "C:\1.BIN" For Binary As #1
Put #1, , BIN
Close #1
End Sub
315301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 01:49:45.50ID:gPwSdoJG0 つか、
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
この部分が何だかわかんないんですよ。
まず、ReDimとは何だ?と。
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
この部分が何だかわかんないんですよ。
まず、ReDimとは何だ?と。
316301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 02:05:21.42ID:gPwSdoJG0 目的は、
&H4D, &H54, &H68, &H54, &H68, &H64という6個のバイナリデータだけの、
1.BINというファイルを作りたい!
です。
&H4D, &H54, &H68, &H54, &H68, &H64という6個のバイナリデータだけの、
1.BINというファイルを作りたい!
です。
317デフォルトの名無しさん (ワッチョイ cb63-jZ9g)
2020/07/08(水) 03:08:12.79ID:F8fi/iH60 Excelでやる事ではない
以上です
以上です
318デフォルトの名無しさん (ワッチョイ cb63-jZ9g)
2020/07/08(水) 03:11:39.83ID:F8fi/iH60 まずバイナリが何かすら分かってなさそうだしこの分だとmidiについても何も分かってなさそう
319デフォルトの名無しさん (ドコグロ MM43-jxlo)
2020/07/08(水) 03:24:41.69ID:llacuNM3M ここで聞くより、「vba バイナリデータ」でググったほうが早そう
320デフォルトの名無しさん (アウアウウー Sa09-X/TW)
2020/07/08(水) 04:08:36.29ID:a4KGuVW5a うちは会社のpcでバイナリ編集するのってセキュリティー的にアウトだし
321デフォルトの名無しさん (オッペケ Sra1-1RNA)
2020/07/08(水) 05:18:34.50ID:hKBgVgLRr この写真のように、例えば、3以下の数値をアクティブにする方法を教えて頂きたい
できれば、for next 構文はなしで
一発検索が望ましい。
https://i.imgur.com/EGujBbu.jpg
できれば、for next 構文はなしで
一発検索が望ましい。
https://i.imgur.com/EGujBbu.jpg
322デフォルトの名無しさん (アウアウエー Sa13-c9t6)
2020/07/08(水) 06:25:23.32ID:yrsbI81qa >>315> ReDimとは何だ?と
思ったらググって下さい。
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
よくわからないですが動的配列を半分の長さで確保してるようです。
512÷2-1=255
forで繰り返すMid関数のスタート引数が1からのため配列の0番を1つ引算してまふ
「4D 54 68 64」ではなくてスペースなし「4D546864」か
Replace関数でスペースを削除しましょう
出来た文字列"4D546864"に対して
ループで前から2文字ずつ"&H"を付け足しているので
おそらく"&H4D&H54&H68&H64"が生成されるのでしょう
なので>>314のコードは全く意味がありません。
思ったらググって下さい。
ReDim BIN(Len(TEMP) / 2 - 1) As Byte
よくわからないですが動的配列を半分の長さで確保してるようです。
512÷2-1=255
forで繰り返すMid関数のスタート引数が1からのため配列の0番を1つ引算してまふ
「4D 54 68 64」ではなくてスペースなし「4D546864」か
Replace関数でスペースを削除しましょう
出来た文字列"4D546864"に対して
ループで前から2文字ずつ"&H"を付け足しているので
おそらく"&H4D&H54&H68&H64"が生成されるのでしょう
なので>>314のコードは全く意味がありません。
323デフォルトの名無しさん (アウアウエー Sa13-c9t6)
2020/07/08(水) 06:49:42.97ID:yrsbI81qa >>321> できれば、for next 構文はなしで
こんな縛りが無ければ普通にググって出てくるし以下で出来るだろうけど
複数のセルを選択する
http://officetanaka.net/excel/vba/tips/tips126.htm
こんな縛りが無ければ普通にググって出てくるし以下で出来るだろうけど
複数のセルを選択する
http://officetanaka.net/excel/vba/tips/tips126.htm
324デフォルトの名無しさん (ワッチョイ cb63-FYib)
2020/07/08(水) 07:11:29.93ID:x0V53xaA0 つーかわざわざselectする意味あんの?
325デフォルトの名無しさん (アウアウエー Sa13-b2Fx)
2020/07/08(水) 07:47:38.02ID:8s/zJrIHa わからないで書いてたのか
326デフォルトの名無しさん (スプッッ Sd03-Cpkm)
2020/07/08(水) 07:58:30.68ID:krt5VVG+d >>316
簡単だろw
Dim btByte() As Byte
Dim lngFN As Long
btByte(0)=&H4D
btByte(1)=&H54
btByte(2)=&H68
btByte(3)=&H54
btByte(4)=&H68
btByte(5)=&H64
lngFN=FreeFile
Open strPath For Binary As #lngFN
Put #lngFN, btByte
Close #lngFN
簡単だろw
Dim btByte() As Byte
Dim lngFN As Long
btByte(0)=&H4D
btByte(1)=&H54
btByte(2)=&H68
btByte(3)=&H54
btByte(4)=&H68
btByte(5)=&H64
lngFN=FreeFile
Open strPath For Binary As #lngFN
Put #lngFN, btByte
Close #lngFN
327デフォルトの名無しさん (スプッッ Sd03-Cpkm)
2020/07/08(水) 08:02:35.63ID:krt5VVG+d >>326
途中で送信しちまった。
スマホで書いてるからどっか間違ってるかも。
Dim btByte() As Byte
Dim lngFN As Long
Redim btByte(5) As Byte
btByte(0)=&H4D
btByte(1)=&H54
btByte(2)=&H68
btByte(3)=&H54
btByte(4)=&H68
btByte(5)=&H64
lngFN=FreeFile
Open strPath For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
途中で送信しちまった。
スマホで書いてるからどっか間違ってるかも。
Dim btByte() As Byte
Dim lngFN As Long
Redim btByte(5) As Byte
btByte(0)=&H4D
btByte(1)=&H54
btByte(2)=&H68
btByte(3)=&H54
btByte(4)=&H68
btByte(5)=&H64
lngFN=FreeFile
Open strPath For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
328デフォルトの名無しさん (スプッッ Sd03-Cpkm)
2020/07/08(水) 08:09:09.54ID:krt5VVG+d >>314
というかね、Variantとは何か、Byteは何かとか考えた方が良い。
扱える範囲が違うということはメモリ上のサイズが違うということ。
6個のバイナリって6Byteのファイルってことだろ。
Variant1個で16Byteだぞ。
というかね、Variantとは何か、Byteは何かとか考えた方が良い。
扱える範囲が違うということはメモリ上のサイズが違うということ。
6個のバイナリって6Byteのファイルってことだろ。
Variant1個で16Byteだぞ。
329301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 09:06:02.86ID:gPwSdoJG0 みなさんレスありがとうございます。 感謝します。
>>327
ってことは、結局、↓でよいのでしょうか?
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = FreeFile
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
>>327
ってことは、結局、↓でよいのでしょうか?
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = FreeFile
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
330301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 09:09:44.11ID:gPwSdoJG0 あるいは、↓ですかね? ↑も↓も「Open "C:\hogehoge.bin" For Binary As #lngFN」の業でパス名が無効です、というエラーがでます。
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = btByte
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = btByte
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
331デフォルトの名無しさん (ワッチョイ 1b68-ucCN)
2020/07/08(水) 09:23:12.29ID:yuZwXh1F0332301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 09:32:29.70ID:gPwSdoJG0 つか、 FreeFile関数ってのがあるんですね 知らなかったw
333301 (ワッチョイ 2301-6wWl)
2020/07/08(水) 09:38:09.26ID:gPwSdoJG0 じゃあ、↓のドコが悪いんだろ?
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = FreeFile
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
Sub test()
Dim btByte() As Byte
Dim lngFN As Long
ReDim btByte(5) As Byte
btByte(0) = &H4D
btByte(1) = &H54
btByte(2) = &H68
btByte(3) = &H54
btByte(4) = &H68
btByte(5) = &H64
lngFN = FreeFile
Open "C:\hogehoge.bin" For Binary As #lngFN
Put #lngFN, , btByte
Close #lngFN
End Sub
334デフォルトの名無しさん (ワッチョイ bdda-ucCN)
2020/07/08(水) 09:40:18.98ID:R5JQxD1z0 >>332
つか、知らないことの方が多いくせに知ったかすんな
つか、知らないことの方が多いくせに知ったかすんな
335デフォルトの名無しさん (オッペケ Sra1-OOGl)
2020/07/08(水) 10:17:02.56ID:67N0qsNYr >>333
「どこが悪いんだろ」
ではなく、
「下記のソースで実行すると〜というエラーが出ます。
調べたところこのエラーの意味は〜と理解していますが、〜と修正したら今度は〜というエラーが出ます。〜〜」
と言ったように、自分でなんとか解決したいという姿勢がないとサポートなんてしたくならないよ
本当は誰も君の相手なんかしなくてもいいんだ
君は人の時間をいただこうとしてることを考えること
「どこが悪いんだろ」
ではなく、
「下記のソースで実行すると〜というエラーが出ます。
調べたところこのエラーの意味は〜と理解していますが、〜と修正したら今度は〜というエラーが出ます。〜〜」
と言ったように、自分でなんとか解決したいという姿勢がないとサポートなんてしたくならないよ
本当は誰も君の相手なんかしなくてもいいんだ
君は人の時間をいただこうとしてることを考えること
336デフォルトの名無しさん (ワッチョイ bd63-am2Z)
2020/07/08(水) 10:25:36.83ID:kC98LgO60 みんなやさしいよね
どこまでも相手してあげてるんだから
どこまでも相手してあげてるんだから
337デフォルトの名無しさん (ブーイモ MMeb-+b0N)
2020/07/08(水) 10:37:36.28ID:vI+4Hlt3M ハゲてきました。
市販の育毛剤で試すとエラーが出ます。
調べたところミノキシジルタブレットが聞くと理解しましたが、それを買って飲んだら今度は心臓ドキドキの副作用がでて命が危険だそうです。
どうしたらいいでしょうか?
市販の育毛剤で試すとエラーが出ます。
調べたところミノキシジルタブレットが聞くと理解しましたが、それを買って飲んだら今度は心臓ドキドキの副作用がでて命が危険だそうです。
どうしたらいいでしょうか?
338デフォルトの名無しさん (ワッチョイ 1b68-ucCN)
2020/07/08(水) 10:37:36.28ID:yuZwXh1F0 暇つぶしでしょ
339デフォルトの名無しさん (ワッチョイ 1b68-ucCN)
2020/07/08(水) 10:38:40.26ID:yuZwXh1F0 時間丸被りとかあんのな
340デフォルトの名無しさん (ワッチョイ cbcc-ucCN)
2020/07/08(水) 10:41:28.04ID:Fq6DmaU+0 >>333
C:\に変なもの置くな
C:\に変なもの置くな
341デフォルトの名無しさん (ワッチョイ a562-vuhN)
2020/07/08(水) 10:53:24.76ID:Ywdztm8P0 つーか動的配列にする意味あんの?
342デフォルトの名無しさん (ラクッペペ MMcb-0WwX)
2020/07/08(水) 12:08:46.81ID:lp5P2pBOM >>341
行間を読め
行間を読め
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★9 [ぐれ★]
- 「母の部屋に安倍氏が表紙の機関誌が」「(安倍氏が被害者なのは)不思議に思いませんでした」山上被告の妹が証言 ★2 [おっさん友の会★]
- 【独占スクープ】元TOKIOの松岡昌宏がSTARTO社を“退所”へ「国分のコンプライアンス違反」問題をきっかけに決断、12月から単独で活動 [Ailuropoda melanoleuca★]
- 【news23】小川彩佳アナ「ここまでの広がりになるということを、高市総理はどれだけ想像できていたんでしょうね」 日中問題特集で [冬月記者★]
- 【野球】大谷翔平、佐々木朗希、山本由伸らがWBC辞退なら広がる不協和音… 『過去イチ盛り上がらない大会』になる可能性も★2 [冬月記者★]
- 【国際】ロシアはすでに戦争準備段階――ポーランド軍トップが警告 ★2 [ぐれ★]
- 【高市悲報】🇨🇳中国「日本への報復措置? 他にいくらでも方法はある。 まだまだやめないよ」 😨😱 [485983549]
- 中国報道、高市首相を「毒苗」と中傷😡 [399259198]
- 高市早苗、約1ヶ月でドル円・10円円安を達成 [256556981]
- (´・ω・`)おはよ
- 中国専門家の興梠一郎先生「実は中国が一番焦ってるのが総領事の暴言だ。中国は今かなり追い詰められている」 [904151406]
- するってぇと何かい?2週間前に安全を確認して輸入再開した海産物を食の安全のために輸入停止にしたってのかい?
