ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part56
http://mevius.5ch.net/test/read.cgi/tech/1534976724/
探検
Excel VBA 質問スレ Part57
■ このスレッドは過去ログ倉庫に格納されています
2018/09/10(月) 21:42:39.57ID:K1uuwFLt
2018/09/10(月) 22:24:34.33ID:IjRjzpeI
>>1乙
2018/09/10(月) 23:23:10.14ID:vQX+MQcw
このスレも相手の居ない淋しいプログラマの愚痴で埋まります
2018/09/11(火) 00:01:04.42ID:2R4DuIA+
「ここなら俺でもマウントとれるだろう」
と他所では負けっぱなしの奴らが集まってくる。
と他所では負けっぱなしの奴らが集まってくる。
2018/09/11(火) 01:02:29.42ID:lrKPSTD5
Excel VBAに関する疑問を抱いて訪れた人がVBAerの惨状を垣間見て、人生に関する疑問を得て帰る
ここはそんなスレ
ここはそんなスレ
2018/09/11(火) 01:05:42.43ID:FQ+eV6sL
Dictionaryのキーと要素の静的型情報がどうしても消えてしまうのですがバグでしょうか?
2018/09/11(火) 01:11:22.91ID:lrKPSTD5
>>6
消えるってどういうこと?
消えるってどういうこと?
8デフォルトの名無しさん
2018/09/11(火) 07:05:37.39ID:qCfc++eI >>6
仕様だと思う
仕様だと思う
9デフォルトの名無しさん
2018/09/11(火) 07:06:20.92ID:qCfc++eI System.Collection.Hashtableと使い分けるのがよろしいかと
2018/09/11(火) 08:08:45.45ID:U3vGX2sH
>>6
具体的にどういう現象?
具体的にどういう現象?
2018/09/12(水) 18:53:39.93ID:lLVFOIbw
バイトの1とイントの1を入れて見るとわかるよ
12デフォルトの名無しさん
2018/09/13(木) 06:42:08.49ID:MLrTlesq >>1
Z
Z
2018/09/13(木) 08:26:36.89ID:pD4xyyr1
2018/09/13(木) 12:39:09.37ID:2r3/pQLa
System.Collection配下のHashtable、ArrayListがVBAで使えるのは知ってる
2018/09/13(木) 18:10:13.06ID:FHzPesBg
どゆこと?
.NETランタイム仕込むの?
.NETランタイム仕込むの?
2018/09/13(木) 18:43:42.97ID:jnyPcCTa
2018/09/13(木) 20:27:53.66ID:pD4xyyr1
hashtableとdictionaryはあるけど、hashmapはなかった希ガス
18デフォルトの名無しさん
2018/09/13(木) 23:51:26.06ID:/ggcYMdi excel vbaって、変数を日本語で定義することができるんだな
感動した
感動した
2018/09/14(金) 07:14:29.85ID:2+njywcI
今時だとできない言語の方が珍しいかも
2018/09/14(金) 07:57:23.09ID:5PCa/oFv
配列多用してプログラ厶書いたけどコレvbaしか出来ない事務レベルのやつは内容分かるんだろうか
職場では似非プログラマの自分とその他しかいないのでメンテ出来なくなりそう
職場では似非プログラマの自分とその他しかいないのでメンテ出来なくなりそう
2018/09/14(金) 08:38:51.08ID:cxzTGReq
>>20
コメント入れまくるんだ
コメント入れまくるんだ
2018/09/14(金) 08:53:13.81ID:itNItVhP
コメント入れる前に整理してくれ
汚いコードのコメントは汚くて結局わかりにくいままになるぞ
汚いコードのコメントは汚くて結局わかりにくいままになるぞ
2018/09/14(金) 10:47:56.50ID:OPHSLG3r
>>20
主な操作対象が配列なのだったらむしろ分かりやすいのでは?
主な操作対象が配列なのだったらむしろ分かりやすいのでは?
2018/09/14(金) 12:16:51.56ID:LywiNQOe
VBAをやっとこさいじれます、っていう感じの人には配列の理解は厳しいぞ
配列のサブスクリプト、コレクションのインデックス、ハッシュテーブルのキーの相互の違いが分からなかったりするからな
配列のサブスクリプト、コレクションのインデックス、ハッシュテーブルのキーの相互の違いが分からなかったりするからな
2018/09/14(金) 12:18:52.11ID:JMy0VfN7
配列の解説書をコメントに書いとく。
具体例を豊富に。
具体例を豊富に。
2018/09/14(金) 15:48:14.90ID:OPHSLG3r
配列が難しいだろうか...
俺にはわからん
俺にはわからん
2018/09/14(金) 17:49:25.94ID:Rix9Ja+2
まぁなんでもそうだろうと思うけど、判る人間には判らない人間がなぜ判らないのかが判らない w
2018/09/14(金) 18:47:04.71ID:5PCa/oFv
いや配列は分かるのかもしれん
ただプロシージャさえ使わず変数名にaとかbとか付けてたりで数百行書いてるようなマクロが散見されるほどうちのレベルは低いからちょっと不安
ただプロシージャさえ使わず変数名にaとかbとか付けてたりで数百行書いてるようなマクロが散見されるほどうちのレベルは低いからちょっと不安
2018/09/14(金) 18:53:37.98ID:8jcNJm47
変数が分かるんなら配列も分かりそうだけど、そんなに難しいかな?
「配列っていうものもあるんだなー」程度でも認識さえしていれば、
むしろ配列しか使ってないコードならそのうち理解してくれそうな気がする。
途中でコレクションとか辞書とかヘンなオブジェクトとか自作クラスとか使ってなければ。タブン。
「配列っていうものもあるんだなー」程度でも認識さえしていれば、
むしろ配列しか使ってないコードならそのうち理解してくれそうな気がする。
途中でコレクションとか辞書とかヘンなオブジェクトとか自作クラスとか使ってなければ。タブン。
2018/09/14(金) 19:06:28.55ID:8jcNJm47
よく考えたら、コードの読みやすさは「何を使うか」より「どう書くか」の方が重要な気がする。
ともあれ、職場に何人かVBAが書ける人がいるようだから(非常に素晴らしいことに)、
適当に何人かひっ捕まえて使わせてみて率直な感想を言ってもらうといいんじゃなかろうか。
ともあれ、職場に何人かVBAが書ける人がいるようだから(非常に素晴らしいことに)、
適当に何人かひっ捕まえて使わせてみて率直な感想を言ってもらうといいんじゃなかろうか。
2018/09/14(金) 20:17:01.33ID:/DsKfDfg
Worksheet.CellsとかRange.Offsetとか、引数に二次元配列をとるアクセサを使えない人は結構いる印象だよな
32デフォルトの名無しさん
2018/09/14(金) 23:44:55.63ID:za5qG/O1 配列の難しさがわからんのは配列すらわかっとらん証拠やぞプロさん達w
33デフォルトの名無しさん
2018/09/14(金) 23:53:34.83ID:KNVYDbzH2018/09/14(金) 23:54:08.70ID:yt+m1AZF
ワークシートの配列の方が難しいよね
35デフォルトの名無しさん
2018/09/14(金) 23:56:00.89ID:za5qG/O12018/09/14(金) 23:59:40.89ID:KNVYDbzH
なるほど配列は易しいデータ構造ってことで
37デフォルトの名無しさん
2018/09/15(土) 00:26:05.12ID:XNrqFkTO excel vbaでテトリスとか作れるようになると、excel vbaを使いこなせられるようになったと思っていい?
38デフォルトの名無しさん
2018/09/15(土) 00:37:49.64ID:0OTUBrr2 >>37
いくない、Excelはゲーム作成用ツールじゃない
いくない、Excelはゲーム作成用ツールじゃない
2018/09/15(土) 07:26:48.93ID:OUVvcRON
2018/09/15(土) 14:47:18.53ID:kCggA2zW
テトリス作れるレベルならそこらへんの私VBA得意ですドヤよりスキル的に遥かに上だから、
VBAらしく事務処理の自動化をやるくらい楽勝だよ
VBAらしく事務処理の自動化をやるくらい楽勝だよ
2018/09/15(土) 14:58:06.40ID:FpfMU/ZL
テトリス作る時間に他の勉強をするべき。
そこまで求められてないから無駄。
そこまで求められてないから無駄。
2018/09/15(土) 16:22:43.79ID:MP3gARzS
>>37
字面だけでいえば、「Excel VBAでテトリスが作れるレベル」なら、「Excel VBAはそれなりに使いこなせる」と言える。
ただ、それを訊いて何をしようとしているのか分からない。内容次第ではおすすめしない。
字面だけでいえば、「Excel VBAでテトリスが作れるレベル」なら、「Excel VBAはそれなりに使いこなせる」と言える。
ただ、それを訊いて何をしようとしているのか分からない。内容次第ではおすすめしない。
43デフォルトの名無しさん
2018/09/15(土) 16:34:10.47ID:oLja5sKR VBAでテトリス作る意味って何?
2018/09/15(土) 16:36:20.47ID:RH+0S0Ax
それなりというか世の中の自称VBAのプロのほとんど全員より上だろう
それ以上の人はVBAできますなんて恥ずかしくて言わない
それ以上の人はVBAできますなんて恥ずかしくて言わない
2018/09/15(土) 16:54:50.81ID:g80wVNRI
エクセルVBAでテトリス作るのは芸ではあるけど実用的じゃない
どうせならエクセルで機械学習とか実務に使う余地があるものやれば
どうせならエクセルで機械学習とか実務に使う余地があるものやれば
2018/09/15(土) 16:55:58.42ID:g80wVNRI
プログラマはVBAできます
なんてわざわざ言わない
他言語ができればできて当たり前だから
なんてわざわざ言わない
他言語ができればできて当たり前だから
47デフォルトの名無しさん
2018/09/15(土) 19:14:56.89ID:XNrqFkTO >>43
vbaを使いこなせられるというか、これが作れるようになれば、この先いろんなツールをつくろうが、
応用がきくという意味で、テトリスという題材を選んでみた。
俺、間違ってることいってる?
vba使いこなせられるになる基準として、何かこういうの作ってみろ的なことがあればいってほしい。
vbaを使いこなせられるというか、これが作れるようになれば、この先いろんなツールをつくろうが、
応用がきくという意味で、テトリスという題材を選んでみた。
俺、間違ってることいってる?
vba使いこなせられるになる基準として、何かこういうの作ってみろ的なことがあればいってほしい。
2018/09/15(土) 19:25:00.03ID:vKLFrcGU
散らばった支社にプログラムを配るにしても、
完璧にシステム仕様が決まっていて、テストも十分終えたもの以外は、一つのExcelファイルに
プログラム
設定データ
蓄積データ
をまとめるのはやめとけって忠告したのに・・・。
プログラムのバグ修正のたびに、支社の端末を直接操作しているVBAマスターを自称する後輩が・・・。
土日ももう呼び出し呼び出し。完全に病んでしまった。
あれほど忠告したのに・・・。
安易な作りでデータ等々を抱えると、プログラムの修正だけしたくても、簡単にはいかないから、
せめて蓄積データだけは別のエクセルファイルなりに保存して開いて使うなりの仕様にしとけと・・・。
完璧にシステム仕様が決まっていて、テストも十分終えたもの以外は、一つのExcelファイルに
プログラム
設定データ
蓄積データ
をまとめるのはやめとけって忠告したのに・・・。
プログラムのバグ修正のたびに、支社の端末を直接操作しているVBAマスターを自称する後輩が・・・。
土日ももう呼び出し呼び出し。完全に病んでしまった。
あれほど忠告したのに・・・。
安易な作りでデータ等々を抱えると、プログラムの修正だけしたくても、簡単にはいかないから、
せめて蓄積データだけは別のエクセルファイルなりに保存して開いて使うなりの仕様にしとけと・・・。
2018/09/15(土) 19:56:51.35ID:JWnql4hZ
>>47
勘違いしてるようだが、テトリスはプログラミングの練習ネタとしてはかなり難しい部類だ
テトリスを自分で設計して作れたら、VBAを使いこなせるどころか世の中でVBAのプロを自称する連中の中でいきなり上位に入るレベル
それくらいVBAのプロのレベルは低い
つまり何が言いたいかっていうと、テトリスはやりすぎ
家計簿くらい作れたら十分面接でドヤっていいよ
勘違いしてるようだが、テトリスはプログラミングの練習ネタとしてはかなり難しい部類だ
テトリスを自分で設計して作れたら、VBAを使いこなせるどころか世の中でVBAのプロを自称する連中の中でいきなり上位に入るレベル
それくらいVBAのプロのレベルは低い
つまり何が言いたいかっていうと、テトリスはやりすぎ
家計簿くらい作れたら十分面接でドヤっていいよ
2018/09/15(土) 20:11:22.09ID:qQRjJW7l
2018/09/15(土) 20:13:33.91ID:kEjGAf/G
多数ユーザー向けにマクロを配布するならもうアドインにした方がいいよな
で、データの方はプログラムとのやりとりに支障が出ないようテーブル名、スキーマ、データフォーマットを固定したソースファイルに別途保存させる方がいい
で、データの方はプログラムとのやりとりに支障が出ないようテーブル名、スキーマ、データフォーマットを固定したソースファイルに別途保存させる方がいい
2018/09/15(土) 20:52:56.93ID:CRrc/VBu
アドインやCOMアドインのベンダーにインターンで行ったが、VBAどころか、C++でガリガリ開発するスーパープログラマが何人もいて、速攻で就職先から外したわ
2018/09/15(土) 21:12:36.41ID:kEjGAf/G
C++でガリガリ開発ってそんなに凄い?
54デフォルトの名無しさん
2018/09/15(土) 21:16:07.93ID:KIanXBkQ C++でガリガリ開発しててもなんとも思わない
VBやウンコスクリプトでガリガリ開発してるのは
サルがオナニーしてるようにみえる
もしくは奴隷が単調な動作を繰り返してるようにみえる
VBやウンコスクリプトでガリガリ開発してるのは
サルがオナニーしてるようにみえる
もしくは奴隷が単調な動作を繰り返してるようにみえる
2018/09/15(土) 21:19:37.63ID:CRrc/VBu
>>52
取っつきにくさでいうと、すでに子供の頃から馴染んでおかなければならないイメージ
俺みたいに遅蒔きで大学に入ってC++を初めてさわったレベルでは追い付けないな、と思った
きっかけは分析ツールみたいなアドインってどう作るのか知りたかったという位、その程度の熱意じゃ無理
取っつきにくさでいうと、すでに子供の頃から馴染んでおかなければならないイメージ
俺みたいに遅蒔きで大学に入ってC++を初めてさわったレベルでは追い付けないな、と思った
きっかけは分析ツールみたいなアドインってどう作るのか知りたかったという位、その程度の熱意じゃ無理
2018/09/15(土) 21:20:38.13ID:CRrc/VBu
間違った
>>53
>>53
2018/09/15(土) 21:52:32.87ID:wUMJLM3O
VBAのほうが文法、ライブラリ、コミュニティレベルがお粗末だから難しいかな
モダンC++は昔とくらべてびっくりするぐらい生産性高いからね
モダンC++は昔とくらべてびっくりするぐらい生産性高いからね
2018/09/15(土) 21:57:22.88ID:wUMJLM3O
59デフォルトの名無しさん
2018/09/15(土) 21:59:21.10ID:XNrqFkTO セル内に
"aiueo"
とか
≪aiueo≫
が格納されていたとして、
囲い文字だけを抽出するにはどうすればいいですか?
"aiueo"の場合は、全部半角なので、配列に代入して、配列の先頭と末尾を参照すればいいのだが、
≪aiueo≫の場合、全角・半角の区別がつかないので(どちらでもない?)、どうやればいいのか。
"aiueo"
とか
≪aiueo≫
が格納されていたとして、
囲い文字だけを抽出するにはどうすればいいですか?
"aiueo"の場合は、全部半角なので、配列に代入して、配列の先頭と末尾を参照すればいいのだが、
≪aiueo≫の場合、全角・半角の区別がつかないので(どちらでもない?)、どうやればいいのか。
2018/09/15(土) 22:10:32.77ID:JUwQwotH
61デフォルトの名無しさん
2018/09/15(土) 22:18:05.27ID:KIanXBkQ A B
1 "aiueo" =(LEFT(A1,1))&(RIGHT(A1, 1)) ⇒ ""
2 ≪aiueo≫ =(LEFT(A2,1))&(RIGHT(A2, 1)) ⇒ ≪≫
オレならVBAなんか使わずにこうする
1 "aiueo" =(LEFT(A1,1))&(RIGHT(A1, 1)) ⇒ ""
2 ≪aiueo≫ =(LEFT(A2,1))&(RIGHT(A2, 1)) ⇒ ≪≫
オレならVBAなんか使わずにこうする
62デフォルトの名無しさん
2018/09/15(土) 22:28:08.97ID:XNrqFkTO2018/09/15(土) 22:34:12.08ID:kEjGAf/G
>>59
正規表現使えば何とかなるよ
基本的には、aiueoが見つかった場合に見つかった文字列の開始位置と終端位置からそれぞれ一文字分外側にオフセットさせた文字列を取ればいい
"aiueo"のようにaiueoの中に2バイト文字が混在してる場合も抽出しなきゃならないような特殊な場合は文字列の範囲指定がちょっと面倒かもしれないが
正規表現使えば何とかなるよ
基本的には、aiueoが見つかった場合に見つかった文字列の開始位置と終端位置からそれぞれ一文字分外側にオフセットさせた文字列を取ればいい
"aiueo"のようにaiueoの中に2バイト文字が混在してる場合も抽出しなきゃならないような特殊な場合は文字列の範囲指定がちょっと面倒かもしれないが
64デフォルトの名無しさん
2018/09/15(土) 22:37:58.41ID:XNrqFkTO2018/09/15(土) 22:41:36.90ID:kEjGAf/G
>>62
囲い文字が特定できるならそれが正解
囲い文字が特定できるならそれが正解
2018/09/15(土) 22:46:04.69ID:JpPL0LlT
>>62
囲い文字以外を置き換えで消しちゃえばいいんじゃね
検索文字列は"[^\(\)\[\]\"\'「」『』《》]"みたいな感じで
最初の一文字と最後の一文字取るだけならもっとスマートに出来るけど囲い文字が無い場合は括弧以外を抽出しちゃうし
囲い文字以外を置き換えで消しちゃえばいいんじゃね
検索文字列は"[^\(\)\[\]\"\'「」『』《》]"みたいな感じで
最初の一文字と最後の一文字取るだけならもっとスマートに出来るけど囲い文字が無い場合は括弧以外を抽出しちゃうし
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 「偽サッチャー」「自滅的」「時代遅れ」 高市首相の経済政策を海外メディアが酷評 [蚤の市★]
- 【ド軍】山本由伸、WBC出場を決断!ドジャースが本人の意向を尊重、佐々木朗希はチームが故障歴を懸念で不参加 [鉄チーズ烏★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- 【テレビ】粗品「THE W」バッサリ「おもんない、レベル低い」審査員就任で「日テレが“血の海”に…」 [湛然★]
- 女の子集合!
- ゲームのストーリーを勉強するならお前らならどうやる?
- (*´ω`*)ドリーム
- 【未確認生ハメ情報】安倍晋三が高市早苗氏とチョメチョメしていたという噂が囁かれる。 [928194223]
- 【悲報】女さん「ハローワークで仕事を探してる3-40代の中年男性いるでしょ。あれ何?」 [483447288]
- 賞与出たからなんか買うって奴なんなの?
