1 名前:デフォルトの名無しさん [2020/06/26(金) 02:01:29.56 ID:uDfmpksE0.net] !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
285 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:00:27.95 ID:yByKJQAn0.net] 読み込めたなら反対をやればいいんじゃないの
286 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:05:07.15 ID:CAdbpiIn0.net] >>283 著作権的にどうなの?
287 名前:277 [2020/07/07(火) 21:10:37.49 ID:2cf+0s2v0.net] >>285 日本語だってそうだろ。 読むのは簡単。 書くのは大変なんだよ。 >>286 ネットで買った和音だけの簡単なデータで改変したデータを自分だけで使うぶんには問題ありません。
288 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:13:27.88 ID:BPFgnJg70.net] じゃあそうすればいいじゃない? 所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?)なんだから 最終的には好きに料理してファイルに吐き出せばいい ただ、1つのセルにバイナリなんて入れたら手作業で編集なんてしずらくてしょうがないけどな あとセルの文字数上限もあるだろうし midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな
289 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:13:57.80 ID:CAdbpiIn0.net] >>287 ならmidiの編集ソフトが使った方がいいね
290 名前:277 [2020/07/07(火) 21:14:00.67 ID:2cf+0s2v0.net] >>286 そもそも観賞するためのmidiデータではなく音楽制作に使うツールとしてのmidiデータなんだよね。
291 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:14:32.40 ID:/HMzap4UM.net] >>282 C#やVB.NETもあるけど?w
292 名前:277 [2020/07/07(火) 21:22:41.71 ID:2cf+0s2v0.net] >>288 > midiの規格書読んだことあるのかしらんが、よくチャンクとかバイナリいじって編集しようと思うな 基礎的な部分は把握してます。 > 所詮16進数の文字の羅列(Byteの配列とかにはさすがに出来てるんやろ?) これがわからないんです。たとえば、4D 54 68 64という16進のデータをexcelの1つのセルに書き込む方法を教えて欲しいのです。
293 名前:277 [2020/07/07(火) 21:25:44.85 ID:2cf+0s2v0.net] で、excelの"C3"に、4D 54 68 64を書き込んで>>277 のソースを動かして試してみたいんです。
294 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:26:04.88 ID:CAdbpiIn0.net] これなんか良いんじゃね https://openmidiproject.osdn.jp/Sekaiju.html
295 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:29:51.89 ID:CAdbpiIn0.net] midiの規格ってそんな簡単じゃないから素人が扱っても音が切れたりトラックがずれたりして 結局使えないだろ
296 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:32:34.47 ID:7cSgkxva0.net] ExcelのRange#valueにバイト列なんか入るわけないんだから自分がわかりやすいように文字列か数値に勝手に変換して勝手に入れろとしか言えない
297 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:34:29.92 ID:MaHOmhaOM.net] Excelでmidiデータを取り扱うなんて常人の発想ではない たぶんあなた以外に誰も方法はわからないから頑張ってその道の第一人者になって欲しい
298 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 21:35:25.31 ID:BPFgnJg70.net] >>292 セルに入れられるのはあくまで文字列ってこと理解してないの? その例なら「Byte(0):77 Byte(1):84〜」とかいう配列から「4D 54 68 64」という文字列にしなければセルには書き込めない Byteはそれぞれの数値が入ってるだろうけど、hexかなんかで16進数にしたうえで(編集上必要あるか知らんけど) join(array, " ")かなんかで1つの文字列にする くっそ編集しずらいだろうけどな
299 名前:デフォルトの名無しさん [2020/07/07(火) 21:44:56.92 ID:tZSrRerM0.net] 前スレのテキストフルスキャンの発想とコード提示してくれた人 改めて言わせて貰う 職場の一大イベントを乗り切ったわこれで
300 名前:デフォルトの名無しさん [2020/07/07(火) 21:46:02.99 ID:tZSrRerM0.net] 改めて多大なるお礼を言わせて貰うが抜けてた これのおかげですべての可能性が広がったわ
301 名前:277 [2020/07/07(火) 22:23:53.24 ID:2cf+0s2v0.net] では、すみません。 >>277 の質問はなしにして、↓の質問をお願いします。 1、変数に「4D 54 68 64」のバイナリデータを代入するソース 2、中身は「4D 54 68 64」だけのファイル 3、ファイル名は5ch.bin こんなファイルを作るにはどのようなソースを書けばよいでしょうか?
302 名前:277 [2020/07/07(火) 22:29:17.16 ID:2cf+0s2v0.net] >>228 allrenameというフリーソフトを使えばいいのじゃ。
303 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 22:32:51.69 ID:CAdbpiIn0.net] >>301 バイナリ編集のソフト使えばいいんじゃね
304 名前:301 [2020/07/07(火) 22:42:26.54 ID:2cf+0s2v0.net] >>303 すみません。 「VBAを使って」でした。
305 名前:デフォルトの名無しさん [2020/07/07(火) 22:43:37.27 ID:O/UE8zUS0.net] もはやExcelを使うことが目的化してる
306 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 22:44:27.22 ID:yByKJQAn0.net] それもう読み込んだデータ無意味やん フォーマット知らんけどセルに書き出せたんならファイルにもいけるやろ
307 名前:301 [2020/07/07(火) 22:54:30.10 ID:2cf+0s2v0.net] >>306 基礎になるソースさえ教えてもらえれば、そこに色々付け加えてって自分に必要なバイナリファイルが作れるんですよ。
308 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 22:57:06.69 ID:BPFgnJg70.net] まず書く努力をしよう
309 名前:デフォルトの名無しさん [2020/07/07(火) 22:57:22.32 ID:0KBHODZEd.net] >>307 そろそろ死ねや
310 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 23:05:51.69 ID:1TMQwlbY0.net] Excelの設定もAppDataの中身も場所も変えて無いのに、 下記のように表示されてマクロが読めません! 「起動フォルダーにある個人用マクロブックは記録のために開かれた状態でなければなりません」
311 名前:デフォルトの名無しさん mailto:sage [2020/07/07(火) 23:09:31.21 ID:exS2x9T+0.net] >>310 そのままググった https://xtech.nikkei.com/it/pc/article/NPC/20070719/277869/
312 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 00:06:04.08 ID:66yUE/saa.net] >>301 「'4D 54 68 64'」シングルかダブルで囲えば良いのでは? 「"4D 54 68 64"」 あるいは いったんタブ区切りファイルtmp.tsvを途中で 中間ファイルとして介在させたらいいんじゃないですか?
313 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 00:14:08.99 ID:4BPfKF9s0.net] ソースくれくれ君だからひんとあろうが自分で書かないよ、こういうやつ
314 名前:301 (ワッチョイ 2301-6wWl) [2020/07/08(水) 01:45:46 ID:gPwSdoJG0.net] >>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
315 名前:301 [2020/07/08(水) 01:49:45.50 ID:gPwSdoJG0.net] つか、 ReDim BIN(Len(TEMP) / 2 - 1) As Byte この部分が何だかわかんないんですよ。 まず、ReDimとは何だ?と。
316 名前:301 [2020/07/08(水) 02:05:21.42 ID:gPwSdoJG0.net] 目的は、 &H4D, &H54, &H68, &H54, &H68, &H64という6個のバイナリデータだけの、 1.BINというファイルを作りたい! です。
317 名前:デフォルトの名無しさん (ワッチョイ cb63-jZ9g) mailto:sage [2020/07/08(水) 03:08:12 ID:F8fi/iH60.net] Excelでやる事ではない 以上です
318 名前:デフォルトの名無しさん (ワッチョイ cb63-jZ9g) mailto:sage [2020/07/08(水) 03:11:39 ID:F8fi/iH60.net] まずバイナリが何かすら分かってなさそうだしこの分だとmidiについても何も分かってなさそう
319 名前:デフォルトの名無しさん (ドコグロ MM43-jxlo) [2020/07/08(水) 03:24:41 ID:llacuNM3M.net] ここで聞くより、「vba バイナリデータ」でググったほうが早そう
320 名前:デフォルトの名無しさん (アウアウウー Sa09-X/TW) mailto:sage [2020/07/08(水) 04:08:36 ID:a4KGuVW5a.net] うちは会社のpcでバイナリ編集するのってセキュリティー的にアウトだし
321 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 05:18:34.50 ID:hKBgVgLRr.net] この写真のように、例えば、3以下の数値をアクティブにする方法を教えて頂きたい できれば、for next 構文はなしで 一発検索が望ましい。 https://i.imgur.com/EGujBbu.jpg
322 名前:デフォルトの名無しさん (アウアウエー Sa13-c9t6) mailto:sage [2020/07/08(水) 06:25:23 ID:yrsbI81qa.net] >>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 のコードは全く意味がありません。
323 名前:デフォルトの名無しさん (アウアウエー Sa13-c9t6) [2020/07/08(水) 06:49:42 ID:yrsbI81qa.net] >>321 > できれば、for next 構文はなしで こんな縛りが無ければ普通にググって出てくるし以下で出来るだろうけど 複数のセルを選択する officetanaka.net/excel/vba/tips/tips126.htm
324 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 07:11:29.93 ID:x0V53xaA0.net] つーかわざわざselectする意味あんの?
325 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 07:47:38.02 ID:8s/zJrIHa.net] わからないで書いてたのか
326 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 07:58:30.68 ID:krt5VVG+d.net] >>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
327 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 08:02:35.63 ID:krt5VVG+d.net] >>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
328 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 08:09:09.54 ID:krt5VVG+d.net] >>314 というかね、Variantとは何か、Byteは何かとか考えた方が良い。 扱える範囲が違うということはメモリ上のサイズが違うということ。 6個のバイナリって6Byteのファイルってことだろ。 Variant1個で16Byteだぞ。
329 名前:301 (ワッチョイ 2301-6wWl) [2020/07/08(水) 09:06:02 ID:gPwSdoJG0.net] みなさんレスありがとうございます。 感謝します。 >>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
330 名前:301 (ワッチョイ 2301-6wWl) [2020/07/08(水) 09:09:44 ID:gPwSdoJG0.net] あるいは、↓ですかね? ↑も↓も「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
331 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 09:23:12.29 ID:yuZwXh1F0.net] >>330 >>307 > 基礎になるソースさえ教えてもらえれば、そこに色々付け加えてって自分に必要なバイナリファイルが作れるんですよ。 もういいやろ
332 名前:301 (ワッチョイ 2301-6wWl) [2020/07/08(水) 09:32:29 ID:gPwSdoJG0.net] つか、 FreeFile関数ってのがあるんですね 知らなかったw
333 名前:301 (ワッチョイ 2301-6wWl) [2020/07/08(水) 09:38:09 ID:gPwSdoJG0.net] じゃあ、↓のドコが悪いんだろ? 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) mailto:sage [2020/07/08(水) 09:40:18 ID:R5JQxD1z0.net] >>332 つか、知らないことの方が多いくせに知ったかすんな
335 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:17:02.56 ID:67N0qsNYr.net] >>333 「どこが悪いんだろ」 ではなく、 「下記のソースで実行すると〜というエラーが出ます。 調べたところこのエラーの意味は〜と理解していますが、〜と修正したら今度は〜というエラーが出ます。〜〜」 と言ったように、自分でなんとか解決したいという姿勢がないとサポートなんてしたくならないよ 本当は誰も君の相手なんかしなくてもいいんだ 君は人の時間をいただこうとしてることを考えること
336 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:25:36.83 ID:kC98LgO60.net] みんなやさしいよね どこまでも相手してあげてるんだから
337 名前:デフォルトの名無しさん [2020/07/08(水) 10:37:36.28 ID:vI+4Hlt3M.net] ハゲてきました。 市販の育毛剤で試すとエラーが出ます。 調べたところミノキシジルタブレットが聞くと理解しましたが、それを買って飲んだら今度は心臓ドキドキの副作用がでて命が危険だそうです。 どうしたらいいでしょうか?
338 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:37:36.28 ID:yuZwXh1F0.net] 暇つぶしでしょ
339 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:38:40.26 ID:yuZwXh1F0.net] 時間丸被りとかあんのな
340 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:41:28.04 ID:Fq6DmaU+0.net] >>333 C:\に変なもの置くな
341 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 10:53:24.76 ID:Ywdztm8P0.net] つーか動的配列にする意味あんの?
342 名前:デフォルトの名無しさん [2020/07/08(水) 12:08:46.81 ID:lp5P2pBOM.net] >>341 行間を読め
343 名前:デフォルトの名無しさん [2020/07/08(水) 16:22:19.40 ID:0tPjVu1x0.net] だから最初に馬鹿はお断りしときゃいいんだよ
344 名前:301 [2020/07/08(水) 17:12:58.80 ID:gPwSdoJG0.net] つか、書き込み先を、D:\にしたら動いたwww >>327 さん、どうもありがとう!!! こんなシンプルなソースでバイナリが書けるんです。 どんなにググッてもこんなにシンプルなソースは出て来ません。 vba史上の快挙です! 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 "D:\hogehoge.bin" For Binary As #lngFN Put #lngFN, , btByte Close #lngFN End Sub
345 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 17:43:43.08 ID:4BPfKF9s0.net] はい次の方
346 名前:301 [2020/07/08(水) 17:58:35.88 ID:gPwSdoJG0.net] >>341 midiファイルというのはサイズが決まってないんですよ
347 名前:デフォルトの名無しさん [2020/07/08(水) 19:59:20.87 ID:7XVFoSLh0.net] >>344 そりゃVBAではなく、VBですらなく BASICの範疇だからな 基本過ぎてわざわざWEBに上げたりしない
348 名前:デフォルトの名無しさん (ワッチョイ a5ae-7/eX) [2020/07/08(水) 20:31:33 ID:cTUxRwdY0.net] >>344 死ね
349 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 21:18:00.92 ID:J4iDAbFT0.net] いつも馬鹿な質問ばかりで済みません。 Excelファイルをダブルクリックした際に他の人が先に開いていた場合、[読み取り専用]か、[通知]か聞かれます。 これをダイアログを出さずに最初から読専で開くようにすることは可能でしょうか? (最初に開いた人は編集・保存できるという前提です) 外部から開く際のコントロールは簡単ですが、自分自身でコントロールするのは無理ですかね? Workbook_Openでいろいろ試したのですが、どうもこのイベントよりも先にダイアログが発生しているようで、、、 無理だ、という回答でもいいです。ご意見ください。
350 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 21:25:31.07 ID:eeGZOJTWa.net] >>349 https://www.shegolab.jp/entry/windows-excel-read-only
351 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 21:41:34.04 ID:eWJ0cHmK0.net] >>349 まずちゃんと自分で調べよう 知識が伴ってないのにろくに調べもしないでは自分で解決どころか調べ方すら身に付かない まぁ、はなから自分でやる気なんか無いのかもしれないが
352 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 21:42:45.60 ID:J4iDAbFT0.net] >>350 情報ありがとうございます。 リンク先のものはだいたい既知の情報でした。 やっぱり自ファイルでの処理は難しそうですね。
353 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 21:46:48.09 ID:J4iDAbFT0.net] >>351 いや、ここに書き込むときは相当調べて最後の頼みのつなで書き込んでます。 調べよう、と仰るということは、何かいい方法をご存じですか?
354 名前:蟻人間 mailto:sage [2020/07/08(水) 22:00:15.73 ID:wtc6YQgJ0.net] >>353 ファイルの関連付けを変えて、マクロで迂回して。。。 。。。ここまで来るとウイルス判定かも(詳しい内容は自粛します)
355 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 22:05:22.90 ID:J4iDAbFT0.net] >>354 う〜〜ん、あまり危ない橋は渡らないでおきます。
356 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 22:32:26.07 ID:R5JQxD1z0.net] >>353 調べ方を調べてから言え
357 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 23:26:10.17 ID:J4iDAbFT0.net] >>356 じゃあ、 >>349 の繰り返しになりますが、、箇条書きにしますね。 ●Excelファイルをダブルクリックした際の挙動についてです。 ** つまり、外部から開くケースは除外です。(こちらのコントロールに苦はありません。昔から使っています) 「外部から」とは、具体的には、、以下のケースなど。 ・ Workbooks.Openの引数で制御する。(VBSからのOpenも含む) ・ ContextMenuの"新規作成"で開く。 ●他の人が開いていた場合のケースです。 ** 最初に開いている人は編集・保存ができる前提です。 → つまり、FileAttributeを最初からReadOnlyにするケースは除外です。 ●上記の際の、[読専]|[通知]を聞いてくるDialogをバイパスしたい。 ** 「最初から読専で開きたいわけではなく、誰かが開いているときは最初から読専にしたい」 → つまり外部から開くケースにあたらない。 ● 自ファイル側で判定したい、、、Workbook_Openで試したが、このイベントより先に ダイアログが発生してる。 >>349 とほぼ同じ内容ですが、これだけ書けばどこまでの理解で何を試したか読み取れますか?
358 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 23:40:00.14 ID:4BPfKF9s0.net] てかそんなんできたらマルウェアの温床になるから出来ないって思っとけよ 共有化でも足りないんならあきらめろん
359 名前:デフォルトの名無しさん mailto:sage [2020/07/08(水) 23:44:27.92 ID:J4iDAbFT0.net] >>358 よくわかりませんが、わかりました。 本件Closeで。
360 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 00:12:21.12 ID:dz7PM5ALa.net] >>346 midiはファイルの種類じゃない
361 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 00:12:27.29 ID:ylhvfSy00.net] ファイルが書き込めない状態になってたら読み取り専用で開けばいいだけじゃん
362 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 00:13:47.48 ID:dz7PM5ALa.net] >>357 きもい
363 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 00:17:27.90 ID:dz7PM5ALa.net] 社会で他の人も使うファイル勝手にいじるなよ
364 名前:デフォルトの名無しさん (ワッチョイ cbdd-7n2a) mailto:sage [2020/07/09(木) 00:44:28 ID:HzjnRl+40.net] >>363 お前には聞いてないから大丈夫だよ。 じゃ、お休み。
365 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 02:16:40.71 ID:eQo6hEQpa.net] >>364 おまえに言ってない
366 名前:デフォルトの名無しさん (ワッチョイ a58b-GkYD) mailto:sage [2020/07/09(木) 03:10:18 ID:rHxVo6X00.net] IE制御のついての質問。 マクロでIE制御を使ってウェブ情報を取り込んでいるんですが、連続で作動させると稀に止まることがあります。 バグった時にタスクマネージャーの詳細をみると毎回「ielowutil.exe」のプロセスだけ残ってるんですよね。 タスクマネージャーでielowutil.exe を右クリックして強制終了させると、また上手く作動するんですが、この ielowutil.exe プロセスを強制的に終了させるコードとかないですかね。 ぐぐっても英語とか読めないのでわからない。誰か助けて https://www.mrexcel.com/board/threads/vba-automation-error-2125463506-8150002e.1079769/
367 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 03:59:15.57 ID:uBlORkna0.net] taskkill /im ielowutil.exe なんでもかんでもExcelでやろうとするな
368 名前:301 (ワッチョイ 2301-6wWl) [2020/07/09(木) 05:30:09 ID:C69oBRyL0.net] つか、>>344 のソースの > ReDim btByte(5) As Byte > btByte(0) = &H4D > btByte(1) = &H54 > btByte(2) = &H68 > btByte(3) = &H54 > btByte(4) = &H68 > btByte(5) = &H64 この部分で、btByteという変数に6個の16進数を代入していますが、もっとエレガントに代入する方法はないでしょうか? 実は定型文みたいのを50個ぐらい入れなきゃならないのです。
369 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 06:03:23.76 ID:hGjJ3XRlM.net] ないです 次の方どうぞ
370 名前:デフォルトの名無しさん (スプッッ Sd93-56/R) mailto:sage [2020/07/09(木) 06:34:39 ID:pd2EiZRKd.net] >>368 そういうのは、あらかじめ用意したバイナリファイルから読み込んだ方がいいと思うんだけど どうしてもソースに大量の16進数を直接書きたいなら 配列を使う方法 h = Array(&H4D, &H54, &H68, &H54, &H68, &H64) For i = 0 To 5 btByte = h(i) Next 文字列を使う方法 h = "4D,54,68,54,68,64" For i = 0 To 5 btByte(i) = Val("&H" & Mid(h, i * 3 + 1, 2)) Next
371 名前:301 (ワッチョイ 2301-6wWl) [2020/07/09(木) 06:37:41 ID:C69oBRyL0.net] >>370 ありがとうございます。 感謝します。
372 名前:デフォルトの名無しさん (スプッッ Sd93-56/R) mailto:sage [2020/07/09(木) 06:38:57 ID:pd2EiZRKd.net] 文字列を使う方法2 h = "4D,54,68,54,68,64" For i = 0 To 5 btByte(i) = Val("&H" & Split(h, ",")(i)) Next
373 名前:デフォルトの名無しさん (アウアウウー Sa09-X/TW) mailto:sage [2020/07/09(木) 06:57:38 ID:150ctWWia.net] エレガント?
374 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 07:48:49.30 ID:3iI6FAhKd.net] >>368 そのエレガントな方法を考えるのがプログラミングなんじゃないの? 50個をコードでどうにかするなら、それをコードに書かにゃならんからエレガントにはならん。 別の所に持って良いなら別途ファイルを用意しとけば良い。 設定とか50個程度ならどっかのシートに書いとくとかでも良い。
375 名前:デフォルトの名無しさん (オッペケ Sra1-OOGl) mailto:sage [2020/07/09(木) 07:58:21 ID:8/Q//t/ar.net] ほんとコードくれくれ君は自分で何も考えないな あげる方も頭おかしいが
376 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 10:13:45.21 ID:tVMvaFoW0.net] 激しく同意する ちなみにバイナリを作成するやり方で実行ファイルが作れるのでウイルシなんかも作れてしまうわけだが
377 名前:デフォルトの名無しさん (ワッチョイ cbb0-mXGD) mailto:sage [2020/07/09(木) 10:32:17 ID:VstlXiSO0.net] モジュールから単体動作する関数を切り取って、別のモジュールにコピーしたのですが 変数の宣言がないとエラー表示されました。何度見ても宣言は正しくされているので?です。 新しく変数宣言して、置き換えると動作します。 こんなことあるのですか?
378 名前:デフォルトの名無しさん (ワッチョイ 2d7c-6wWl) mailto:sage [2020/07/09(木) 10:47:12 ID:ylhvfSy00.net] >>377 変数?定数?
379 名前:デフォルトの名無しさん (ワッチョイ cbb0-mXGD) mailto:sage [2020/07/09(木) 10:48:52 ID:VstlXiSO0.net] すみません。変数ではなく定数(const)でした。
380 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 10:53:22.69 ID:ylhvfSy00.net] >>379 グローバルな定数?
381 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 11:12:09.02 ID:VstlXiSO0.net] ローカルです。
382 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 11:19:56.91 ID:JYozEgDc0.net] option explicitの有無は?
383 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 11:21:50.10 ID:DLLEuHaFa.net] >>376 みんなわざわざ煙に巻いてるのに言っちゃ
384 名前:デフォルトの名無しさん (ワッチョイ cbb0-mXGD) mailto:sage [2020/07/09(木) 11:26:19 ID:VstlXiSO0.net] >>382 option explicitはあります。
385 名前:デフォルトの名無しさん mailto:sage [2020/07/09(木) 11:30:45.63 ID:ylhvfSy00.net] >>384 稀に起こるが原因は不明 エラーになった定数の宣言行を切り取り貼り付けすればとりあえず治る