Excel VBA 質問スレ Part64

レス数が1000を超えています。これ以上書き込みはできません。
2019/12/02(月) 23:43:54.18ID:ngrqyTy20
!extend:checked:vvvvv:1000:512

ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK

※前スレ
Excel VBA 質問スレ Part63
https://mevius.5ch.net/test/read.cgi/tech/1568630099/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2020/03/11(水) 23:28:12.64ID:GnLLEs2o0
>>928
範囲指定ならrows("3:5") columns("a:c")とか書けるけど、そういう意味じゃなくて?
2020/03/11(水) 23:43:13.84ID:mSxLcM6q0
>>929
変数使ったら「a & ":" & b」って書かなきゃならんのが嫌なだけ
& ":" &が嫌
2020/03/12(木) 00:49:49.85ID:1HHLdXOlx
>>928
二次元のオフセット値で座標確定しなきゃならないRangeと違ってRowsやColumnsは一次元のオフセットで場所を指定できるからね
行や列の指定に多次元引数を許容する実利が少ない
逆にRangeだって三次元以上のインデックスを指定できるようにする意味がないから二次元までのインデックスになってるわけで
2020/03/12(木) 01:58:06.82ID:NVBYTwVX0
いや実利ありまくりだろうが
2020/03/12(木) 08:21:08.26ID:2qpmsnq30
>>925
Application.Wait Now + 1 / 24 / 60 / 60 / 10

これって、wait してる?
2020/03/12(木) 10:33:01.07ID:F1q/9YDt0
925だけど、ごめんなさい
NOWだと秒未満が扱えないから、現在時刻が0.1秒超えるとコマンド実行分しかwaitしてないのか
以下の様に訂正します
×Application.Wait Now + 1 / 24 / 60 / 60 / 10
○Application.Wait [Now()] + 1 / 24 / 60 / 60 / 10
[]はワークシート関数らしいね
2020/03/12(木) 14:14:34.28ID:renYLELNM
セルの組み合わせを検索したいんですがfind関数のAND使うしか無いですかね?
A1セルかつB1セルの値をC,D列から検索するような事をしたいです。
2020/03/12(木) 15:35:29.52ID:+5QmAI+3r
みなさんが使ってるパソコンのスペック教えて下さい
できれば機種もおながいします
2020/03/12(木) 19:36:43.40ID:RTn0fWyO0
>>935
1セルずつ自分で調べる
2020/03/12(木) 19:42:45.16ID:kpCmVf8sM
>>936
そんなの知って何がしたいんだよ
939デフォルトの名無しさん (アウアウクー MM51-55Jx)
垢版 |
2020/03/12(木) 20:56:37.31ID:okuX4gckM
>>935
ドクターゲロに聞く
2020/03/12(木) 21:04:05.61ID:2HpOUvGf0
>>935
AB列の値を結合した検索用の列を追加すればいいんじゃね
941デフォルトの名無しさん (ワッチョイ 858a-JgDO)
垢版 |
2020/03/12(木) 21:42:19.02ID:eUhuAVRD0
>>938
大喜利。
MMXペンティアムとかボケろってことでは?
2020/03/12(木) 22:03:09.82ID:R0C6kYZh0
じゃあ、CyrixMII 233MHzぅ!
2020/03/12(木) 22:56:49.72ID:nToT5DGB0
datファイルやtxtファイル読んで配列に入れたい場合って、EOFまで一行ずつ読んで配列要素をredimするのがキレイで分かりやすい?
2020/03/12(木) 23:24:55.83ID:renYLELNM
>>940
ありがとうございます
セルをグループ化するオブジェクトがあるかと思ったのですが、皆さんの反応見るとやり方工夫するしか無さそうなのが分かりました…
2020/03/12(木) 23:52:42.43ID:RTn0fWyO0
>>943
一括で読んでsplitする手もある
2020/03/13(金) 00:22:47.36ID:wWT1UGjTr
みんなどうやって勉強したの?
どく学?
2020/03/13(金) 00:28:32.32ID:ZeWzgGw60
他の言語やってれば独学で(も)行けるが
もし始めてなら入門書読んだ方が早いかも
2020/03/13(金) 00:38:00.66ID:/vlIPRjer
>>947
サイトで調べてやろうかと思ったけどなかなか大変そうなので買って読んでみます!ありがとうございます!
2020/03/13(金) 03:28:46.12ID:OcgrooQ3a
>>946
もう20年以上前だがな
2020/03/13(金) 07:21:17.73ID:8ov/WEIe0
インプレス『できるExcelマクロ&VBA』他、期間限定で全文公開
https://book.impress.co.jp/items/tameshiyomi
2020/03/13(金) 09:45:24.42ID:S934/UwJa
VB.NET 廃止か
まさかVBAより先に死ぬとはな
952デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
垢版 |
2020/03/13(金) 11:43:51.46ID:hr/TjqNF0
>>951
ソースどこ?
2020/03/13(金) 11:44:52.56ID:ojnGj1Dgr
>>950
これは電子書籍無料ダウンロードはできないのね
見るだけか
2020/03/13(金) 12:07:27.45ID:ZeWzgGw60
>>950
いいね!

>>951
ソース?
2020/03/13(金) 14:33:35.87ID:DsczgAs80
https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/
今後、Visual Basicを言語として進化させる予定はありません。
言語の変更を必要とする.NET Coreの将来の機能は、Visual Basicではサポートされない可能性があります。
プラットフォームの違いにより、.NET Framework上のVisual Basicと.NET Coreにはいくつかの違いがあります。
2020/03/13(金) 15:39:53.35ID:yxSDhoD50
>>953
画像ファイル1ページずつならできないわけじゃないけど面倒やね
例えばクロームのデベロッパーツール使うと
957デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
垢版 |
2020/03/13(金) 16:28:43.22ID:hr/TjqNF0
廃止じゃないじゃん
馬鹿は死ねよ
2020/03/13(金) 18:21:15.27ID:cgyHyg3GM
>>957
死ぬのは、スレ違いネタに必死になってるおまえの方だよ
2020/03/13(金) 23:23:36.16ID:VPbZTknR0
いやいやお前だろ
2020/03/13(金) 23:39:30.54ID:sLWP0xGH0
わかった!オレがしぬ!
2020/03/14(土) 09:26:33.93ID:cldo6UeB0
罰が当たってコロナに感染重症化しそう
2020/03/14(土) 09:28:47.00ID:XOiIzQdu0
わかった!おれもしぬ!
2020/03/14(土) 09:55:43.66ID:8jJQrMy3a
はいはい!オレもしぬ!
2020/03/14(土) 16:27:40.06ID:juE+caHb0
A列の数字に対してabc順に処理をしたいんですがどのような構文にすればいいでしょうか?
A B C
1 a d
1 b e
1 c f
2 g i
2 h j
3 k l
2020/03/14(土) 17:03:17.53ID:9mSKrJ1e0
>>964
abc順に進むカウンターでループ
BC列の各セルに対しfor eachループし、 カウンターと一致したら同行A列の数字に対して処理を行う
2020/03/14(土) 17:48:23.61ID:juE+caHb0
>>965
すみません説明が悪かったです
A列を組としてB列を男C列を女としたときに
1組の男、1組の女、2組の男、2組の女‥‥の順でそれぞれ上から処理する形です
2020/03/14(土) 18:22:21.70ID:nT2WeRIi0
>>964の例で言うと
1-a (B1)
1-d (C1)
1-b (B2)
1-e (C2)
1-c (B3)
1-f (C3)
の順に処理したいって事?
2020/03/14(土) 18:47:53.73ID:7lWVnCph0
オレ: >>965すげぇ! >>964が言ってる意味分かるんだ!!
オレ: >>966?、組?男?女? 964を見てそれを想定するの、人類にはムリだよ…
   で? 結局「処理」って何なん?
オレ: >>967すげぇ! さっぱり分からん!!
2020/03/14(土) 18:53:08.37ID:JrGvwLlh0
アルファベット順だろ
A列がソートされてるんならIFで一個下と比較すりゃいいだろ
されてないならソートしろ
2020/03/14(土) 18:53:46.16ID:wiK5yt+U0
>>968
わかる
エスパー
971デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
垢版 |
2020/03/14(土) 19:24:58.83ID:JhfhrpV40
馬鹿は自分頭の中で整理できないから馬鹿なんだよな
2020/03/14(土) 19:50:52.55ID:9mSKrJ1e0
>>966
1((a,b,c),(d,e,f)),2((g,h),(i,j)),3((k),(l)) かな
どうも、アルファベット順というのも座標の説明に使っただけで、それでソートするってわけでもなさそうだね
組もごちゃ混ぜになってるわけでもないっぽいね
なら
上から下へ進むループを組んで、組が変わったら位置を記憶して、その範囲でB列、C列の順にループ
2020/03/14(土) 19:54:23.48ID:E0DYL6Pb0
すげーよな
昇順になってんだから頭から順番に処理すりゃいいんじゃね?としか考えつかない
2020/03/14(土) 21:29:14.28ID:juE+caHb0
>>972
できました
ありがとうございます
2020/03/14(土) 21:46:30.89ID:uUhF8jFda
別のブックのVBAをRUNしたらMsgBoxが出てきてボタンをクリックしないといけなくなったんですが、
VBAでボタンをクリックする方法はないでしょうか。
その別のVBAの方は修正したくないので。
2020/03/14(土) 22:44:44.71ID:2hmQ2yxV0
sendkey enterでええんじゃね
2020/03/14(土) 23:46:23.57ID:1CTohHuR0
タッチディスプレイでエクセルドロップダウンリストが選択しにくいのでVbaでユーザーフォームで
ドロップダウンリストを全部表示させて選択式にしたいんだけど何か良い方法ありますか?
2020/03/15(日) 01:41:25.49ID:B9oF4/gh0
VBEの各種ウィンドウ(プロパティウィンドウとかローカルウィンドウとか)を
マウスでドラッグすると、ウィンドウの枠がマウスポインタの動きから
遅れて動き、ウィンドウの枠がチラつくのは自分だけですか?
CPU使用率は10%未満なのでスペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
2020/03/15(日) 01:50:40.72ID:B9oF4/gh0
>>978
メモリ使用率は50%未満です。
2020/03/15(日) 03:47:53.03ID:B9oF4/gh0
すいません。意味が分かりにくいので再投稿します。

VBEの各種ウィンドウ(プロパティウィンドウとかローカルウィンドウとか)を
マウスでドラッグすると、そのウィンドウの枠がチラつきながら
マウスポインタよりも目に見えて遅れて動きます。
これは直すにはどうしたら良いでしょうか。
CPU使用率は10%未満でメモリ使用率は50%未満なので
スペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
981デフォルトの名無しさん (スプッッ Sd02-TKmo)
垢版 |
2020/03/15(日) 07:14:17.59ID:DNgNcsNnd
仕様なので気にしない事
2020/03/15(日) 07:51:34.39ID:3dklKXuL0
>>977
ドロップダウンじゃない方のリストボックスを使う
ユーザーフォームにこだわらなければ、空欄にリストの内容を表示して、イベントで拾ってもいいと思う
2020/03/15(日) 14:54:37.12ID:0UhNKPF0r
(インクの開始)とかをマクロボタンに登録可能?
各機能をマクロボタン化したいけど、どの機能がどのマクロか探しても出てこない…
2020/03/15(日) 15:25:04.36ID:/MmP9RhE0
これ?
With Application.CommandBars
 If .GetEnabledMso("InkingStart") = True Then
  .ExecuteMso "InkingStart"
 End If
End With
2020/03/15(日) 17:52:47.26ID:LHwp9FeQ0
描画にインク機能があるが、再生が無い。
2019なのに何故?
2020/03/15(日) 17:56:02.76ID:ro5SoUspd
>>983
まあ回答じゃないけど、その場で
Dim cb As Commandber
Dim ctl As CommandbarControl
For Each cb In Application.Commandbars
Debug.Print cb.Name
For Each ctl In cb.Controls
Debug.Print " " & ctl.Name
Next
Next
的なのを実行して調べるな。(出先なのでExcel触れないから間違ってるかも。NameはCaptionか?)
大量に出てくるからDebug.Printじゃ間に合わないだろうから、GUIにしてリストボックスとかにするのが現実的。
2020/03/15(日) 23:43:09.19ID:KOSOM8NC0
>OSはWin10でエクセル2010の環境です。
これだよ
2013以上にすると直るよ
2020/03/16(月) 09:42:32.24ID:zMoP23Lv0
Excelの内部構造が大幅に変わったのは2017からじゃなかったか
2020/03/16(月) 11:24:29.57ID:DJ4MbV7t0
2013じゃね
2020/03/16(月) 17:48:16.80ID:Ehy6Otktr
>>984
タッチパネルだとエラーがでたり、何も動かなかったりするね…
2020/03/16(月) 17:49:06.17ID:Ehy6Otktr
>>984
でもありがとう
お礼書いてなかった
2020/03/16(月) 20:29:35.60ID:YT6hS8mka
>>975-976
待ちになったままsendkey の行が処理されないですわ
2020/03/16(月) 20:57:04.54ID:G4gOAdERd
>>992
されるわけない。
マルチプロセスにすべし。
2020/03/16(月) 21:45:49.75ID:YT6hS8mka
>>993
こんな感じか
'CreateObject("Excel.Application")を宣言し変数を作成します。 Set myApp = CreateObject("Excel.Application") '以下のコードがエクセルを別プロセスで開くための肝になる点です。 myApp.Workbooks.Open "開く対象のファイルのフルパス" '
2020/03/16(月) 23:12:55.50ID:cMwINrzG0
コピーした行を挿入したいのにpasteやらDestination:=Rowsやらinsertやら試してもダメだったけどPasteSpecialしたら通った
よくわからん
2020/03/16(月) 23:46:26.48ID:ZHCf4FTc0
pasteやらDestinationじゃそりゃ出来んだろう
2020/03/17(火) 07:10:46.51ID:fnLz6KMUr
>>986
よくわからなかった
2020/03/17(火) 09:07:31.12ID:KpY/Lzz/M
>>996
そうなの?解説ページ見たんだけどな
ほかに行貼り付けする記述ってあります?
2020/03/17(火) 13:21:49.91ID:4wOPps0G0
Excel×Python最速仕事術
マクロはもう古い!
2020/03/17(火) 13:36:34.30ID:ybHHyXnP0
excelはエディタがどうにかならんのか?
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 105日 13時間 52分 40秒
レス数が1000を超えています。これ以上書き込みはできません。