Excel VBA 質問スレ Part68

レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん (ワッチョイ dbda-8BP0)
垢版 |
2020/08/30(日) 11:55:27.33ID:Oy/VxFsh0
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける

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

※前スレ
Excel VBA 質問スレ Part67
https://mevius.5ch.net/test/read.cgi/tech/1593104489/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2020/12/03(木) 13:04:06.25ID:By9u7ZkT0
好きなようにしてここからも関わりのないどこか遠くへ行ってね。
ずーっと複数人がしてた忠告に耳もかさず我を通した結果であって
最後くらい責任持ってケツ捲くってね
2020/12/03(木) 13:04:24.24ID:eDye5v6CM
バレたら損害賠償モノだと思うし容易にバレると思うけど
2020/12/03(木) 13:10:53.58ID:AggFt+oH0
会社の時間を使って作った会社の資産であるのに個人のものと勘違いしてる馬鹿
2020/12/03(木) 13:54:32.21ID:7SYgfNcjM
家で作ったプロシージャをtxtでコピーして会社にメールで送ってハメてただけだから 
ほとんど個人の時間削ったものだけどね
ちょっとやってみるかなあ
866デフォルトの名無しさん (ワッチョイ e217-jrSk)
垢版 |
2020/12/03(木) 18:28:51.55ID:wVqnbq9D0
application.ontimeメソッドを使ってるのですが、

For i = 0 To Counter
Application.ontime StartTime + Interval * i, "renzoku"
Next i

これを停止させるのが難しそうだったので、
停止はさせないで、エクセルを閉じれば停止すると思ったのですが、
他のエクセルを開いた状態で、これを閉じたら、
またマクロが動き続けてしまいます、
ontimeメソッドを停止させるか、
マクロの書いてあるエクセルを閉じたら、
ほかのエクセルが開いていてもマクロを停止するようにはできないでしょうか?
2020/12/03(木) 18:35:32.96ID:0OrJPKRU0
ワークブックのイベントで検索
2020/12/03(木) 19:23:44.42ID:PVVpY3tx0
>>866
タイマーで設定した内容をどこかに覚えておいて、また停止させるマクロを動かす
面倒だけど、それ以外に方法はない
2020/12/03(木) 19:41:46.88ID:is546aJe0
CSVのデータを開いて
全部その中で計算させて結果だけをマクロブックに取り込んでCSVを閉じる
初心者ながら成功した…うれしいわ
870デフォルトの名無しさん (ワッチョイ 6e01-zLCK)
垢版 |
2020/12/03(木) 21:55:24.24ID:anyYWQoy0
「慶應卒の学歴なんていらない」10代起業で成功する子の共通点
https://www.excite.co.jp/news/article/President_35457/
【アプリ開発で起業】必要な心得とマネタイズ方法のすべて
https://www.dreamgate.gr.jp/contents/column/application-development
学生起業家が開発、「人を軸に本を探すアプリ」とは?読書通じて「考える力」養って
https://newswitch.jp/p/20168
島田商高生がアプリ考案、発表 ICT起業家育成プログラム
https://www.at-s.com/news/article/local/central/730010.html
医師コンビが「治療用アプリ」で起業、禁煙に続き高血圧治療アプリを開発
https://diamond.jp/articles/-/229375
好きが高じて“カレー起業”、キャッシュレス決済アプリ「TOKYO MIX CURRY」の挑戦
https://diamond.jp/articles/-/215868
起業で成功するキャリア形成の仕方とは? 元プロサッカー選手で起業家の鈴木啓祐氏に聞いた
https://sogyotecho.jp/career-development/
年収3,000万超え!?個人開発で儲かっている海外コミュニティサイト5選!
https://note.com/taishikato/n/n7809a8ed3ffc
2020/12/04(金) 00:52:07.07ID:rXUXpqvxr
ほとんどの解説サイトではcells("A1")と記載されてますが、cells (1,1)の方が分かりやすいし、vbaも組みやすいのに、なぜA1と言う記載なのでしょうか?
ここの人たちはどっちを使ってますか?
2020/12/04(金) 01:43:32.26ID:/uuA3VLbd
>>871
range(″A1″)ね
初心者向けにイメージ掴ませやすいような表記をしてるだけでは?
インクリメントとか考えるとcells使う方が確かに分かりやすいけどどういう訳か初心者はcellsを理解してくれない
2020/12/04(金) 01:44:00.17ID:xF22O8yc0
>>861
何もしないで放置しておけばいいよ
周囲の仕様変更で使い道なくなるだろ
後腐れなく異動しようぜ


VBS使うとウィンドウ非表示で目的のファイルの削除、その後にVBSファイル自身を削除ってのが出来るけど
そんな時限爆弾がスタートアップフォルダに入ってたなんてー(驚愕)
874デフォルトの名無しさん (アウアウウー Sa83-13fy)
垢版 |
2020/12/04(金) 01:44:10.31ID:oC1oU7iua
range("A1") と cells(1, 1) なら変わらないけど、k列とか言われるとね
固定された位置なら前者じゃないかしら
式の解析をする分だけ前者が遅い気がするけど
2020/12/04(金) 01:45:24.52ID:oC1oU7iua
変数をつかうなら、cellsでね
2020/12/04(金) 01:46:09.78ID:oC1oU7iua
行や列と指定に変数をつかうなら、です
2020/12/04(金) 01:46:59.97ID:oC1oU7iua
A1にoffsetもありか
2020/12/04(金) 02:20:30.55ID:ifXtoFa7r
>>872
あ、rangeでした
普段使わないから間違えた
たまにしか使わないからサイト検索しながら組んでるんてすけど、分かりにくいからやめてほしい…
2020/12/04(金) 02:33:53.57ID:pAim30VZ0
>>878
いつものあいつ
2020/12/04(金) 06:54:12.47ID:Ao/7FxRU0
rangeは範囲を選択するときは便利だけど1つのセルならcellsだね
まあ範囲も動的ならrangeの中にcells使うけど
2020/12/04(金) 06:57:58.98ID:zpKrUFifM
rangeは名前付けてるセルを指定するときに使う
2020/12/04(金) 10:09:04.15ID:QvMd2aQjM
最初の頃はExcel上とかRangeだとA1(A列、1行)って列、行の順なのにCellsは行、列の順だから混乱した記憶がある
2020/12/04(金) 12:34:38.31ID:j7DbuDw80
歴史的にはR1C1方式の方が先なんだけどな
2020/12/04(金) 14:03:07.99ID:ESISvWhvd
>>830
入構2週間前からの体温を記録する資料の提出を入構2週間前切ってから要求された場合とかな
vbaじゃなくワークシート関数でできるけど
2020/12/04(金) 14:09:34.65ID:UF2xE4cEH
ユーザーフォームで使用するSubやfunctionプロシージャって標準モジュールに書くのが一般的?
独学だからよく分かんないのよね
2020/12/04(金) 14:11:25.58ID:UF2xE4cEH
↑ユーザーフォームで呼び出すの方が適切だったかな
2020/12/04(金) 15:05:45.91ID:QvMd2aQjM
個人的な好みだけどそのフォーム内でしか使わないならPrivate Subでサブルーチン作っちゃうかなぁ
クラスモジュールとフォームの両方から呼び出したいとかだと標準モジュールに書かざるを得ないけど
まぁそれにしてもプロシージャの頭にコメントで処理名、機能、引数、返り値、備考を書くようにはしてるからそこに何処から呼んでるかとかぐらいは書いておくけど
2020/12/04(金) 15:08:50.81ID:NJplFCDqM
どうでもいいんじゃない?
モジュール化云々が問題になるような粒度の責務をVBAに負わせている時点でシステム全体の設計を疑ったほうがいい
2020/12/04(金) 15:29:16.67ID:UF2xE4cEH
>>887
確かにワークブックイベントでユーザーフォームのpublic Subが呼び出せなかったからどこに書いたらいいのか迷ってしまったんだ
クラスの理解はなかなか難しい
参考になりました!
890デフォルトの名無しさん (ワッチョイ 6e01-zLCK)
垢版 |
2020/12/04(金) 17:33:04.77ID:9AUT9QCq0
中学数学からはじめる微分積分
https://www.youtube.com/watch?v=4p1rwfXbCoY&;t=4341s
中学数学からはじめる相対性理論
https://www.youtube.com/watch?v=voFHToRM4xI&;t=10s
中学数学からはじめるAI(人工知能)のための数学入門
https://www.youtube.com/watch?v=7A05OamqCyc
中学数学からはじめる三角関数
https://www.youtube.com/watch?v=OLqgs4fJl7Y&;t=3803s
2020/12/04(金) 22:21:10.08ID:+mljwe0d0
クラスで挫折したけどユーザー定義型で大満足です
2020/12/06(日) 04:50:03.54ID:hAx1GypdM
汎用性が高そうなのは標準モジュールにするぐらいの適当さでいいよ
VBAのメリットは手軽に書けるとこだし

それより出来るだけメソッドで処理を区切るといいよ
メソッド名で何してる部分なのか分かりやすくなるし、
変数の使い回しが避けられたり、コピペしやすくなったりメリットが多い
893デフォルトの名無しさん (ワッチョイ 38e6-xfUJ)
垢版 |
2020/12/06(日) 10:12:36.99ID:j9ZLT2ad0
必要なパラメータが少なければな
毎回フォームのValue読むとか最低だし
2020/12/06(日) 12:03:36.23ID:/svRxsbg0
課題が集約されてるサイトとかありますか?
検索してもIf文を使ってなど基本問題しかなく、もっと実用的なツール作成などの課題が欲しいです
2020/12/06(日) 12:46:36.44ID:q9M2MiSg0
こんなツールが欲しいってのを作ればいいじゃん
2020/12/06(日) 17:40:13.12ID:hPxm9AMa0
>>894
課題が集約されたくなるBGM
https://www.nicovideo.jp/watch/sm35359889
2020/12/06(日) 22:20:11.18ID:sERfGt0q0
もう課題じゃなく必要なものを作ればいいんじゃね
必要なものがないなら何で勉強してんだよ
2020/12/07(月) 03:29:03.52ID:yHI9MFHB0
欲しいのは課題じゃなくて解答だろう
2020/12/07(月) 16:02:20.71ID:jH6ow3A+a
ここに見つけた課題の質問はするなよ
2020/12/07(月) 16:07:44.46ID:6Oxb+EmAM
VBAなんて解説サイト沢山あるんだから、
その場その場で分からない所をググればいいんじゃないの

カンニングokの試験のために勉強するようなもん
時間の無駄
2020/12/07(月) 21:46:54.62ID:MfiN0qq40
ここで質問する人の検索能力
2020/12/07(月) 22:20:43.96ID:x2seJpDD0
能力以前に検索する気が
903デフォルトの名無しさん (ドコグロ MMa8-dtvz)
垢版 |
2020/12/07(月) 22:30:31.51ID:heoFqJclM
検索語の先頭にはvbaを書くのが基本
2020/12/07(月) 22:57:19.40ID:JFqExP+fa
検索するより聞いた方が早いとか思ってる初心者
2020/12/08(火) 00:07:01.16ID:/yTvtqo50
>>894ですがレスくれた方どうもです
作りたいもの作れってのはその通りなんですけど特になくて...
依頼されて作るのは楽しくて会社でもツール作成をやらせてもらってるんですが、家でも勉強がてら何か作りたくてレスした次第です
作りたいもの考えることにします
2020/12/08(火) 00:16:40.59ID:2H+tIWVU0
無いよそんなの
2020/12/08(火) 01:50:26.85ID:xto6xTql0
いつもののあいつだぞ
2020/12/08(火) 02:39:59.03ID:jyeEIiAS0
まわりが振り回されるだけ
2020/12/08(火) 06:50:25.81ID:IqyEdS5t0
作りたいもの無いなら筋トレでもしてた方がマシやろ
2020/12/08(火) 20:06:03.71ID:lRTQaMU80
ピボットフィールド名に変数を使うとエラーになりました。
変数は使えないのでしょうか?何か方法あれば教えてください。

.Sheets("X").PivotTables("Y").PivotFields(変数)
2020/12/08(火) 20:15:21.56ID:XcMxA1Lma
またおm
2020/12/08(火) 20:25:01.68ID:pmTkuroL0
職場が古臭い超巨大組織で、EXCELしか使えないからVBA
勉強してるんだけど、柔軟というか互換性重視しすぎというか
何でも許しすぎというか(暗黙のなんちゃらが多い)、てんこ
盛りすぎて使いにくいなこれ…



継承無いのも地味に痛い。普段めったに使わないけど、「ここは
インヘリタンスとポリモーフィズムっしょ」ってところで使えない。
2020/12/08(火) 20:34:22.37ID:XcMxA1Lma
>>912
そのまま上司に言えばいいんじゃね
2020/12/08(火) 20:56:41.26ID:lRTQaMU80
自己解決しました
お騒がせしました
2020/12/08(火) 21:38:29.64ID:eufCS9w40
クラスじゃダメなんですか?
2020/12/08(火) 21:50:04.46ID:pmTkuroL0
>>913
EXCELで絵が描けるってだけで驚く職場ですわ。

「python とかC# か、せめてJAVAを…」って言ったら

py の時点で「はあ?」になって、「上司の自尊心を傷つけた
角」で有罪w
2020/12/08(火) 22:09:36.03ID:/3eNQIe50
何か覚えたら人に知ったかぶりたくなる小学生じゃないんだからさ…
2020/12/08(火) 22:26:44.03ID:eufCS9w40
こんなのが職場にいたらちょっと困ります
2020/12/09(水) 01:31:58.28ID:6n7tUtuW0
すげぇ早口でオタギレしてそう
920デフォルトの名無しさん (アウアウウー Sa6b-wvAC)
垢版 |
2020/12/09(水) 01:41:07.54ID:AZek/pZva
VBAがなくなると脅されています
その時にはVBSもなくなりますか?
921デフォルトの名無しさん (アウアウクー MM1b-iTOR)
垢版 |
2020/12/09(水) 02:14:11.71ID:WuZTb4kZM
無くならなくないよ!目を覚ませ!!!
2020/12/09(水) 02:18:54.70ID:aFDIkFBR0
>>920
ソース出せよ、あとどこからいつなくなるのかによる
2020/12/09(水) 02:53:27.53ID:jODQKuwy0
https://www.bulldog.co.jp/common/upload/product/20170124163441_1485243281733.jpg
2020/12/09(水) 08:12:10.11ID:DDb5ExOLM
西日本では中濃は殆ど見かけない
2020/12/09(水) 09:50:23.00ID:jODQKuwy0
https://www.otafuku.co.jp/image/product/325.jpg
2020/12/09(水) 09:53:21.34ID:QFKNxFhfM
目玉焼きには中濃ソース派
2020/12/09(水) 13:03:56.69ID:TZVf/s/B0
>>916
典型的な無知無能の知ったかオタク馬鹿
2020/12/09(水) 17:45:40.43ID:HptS3Gf+H
クラスを変数の格納で試しに使ってみたけど、値渡しのときに複数のsheetやRangeを一つのobjectとして送れるのが便利だった
それがいいのか悪いのかもすら分からんけど
あと宣言を減らせるのもいいな
2020/12/09(水) 19:30:15.22ID:Q1uyX9N5M
>>928
それって単なるTypeで定義するのとなんか違うの?
2020/12/09(水) 21:52:52.42ID:bJuEauhPM
>>912
PowerShellはダメなのか?
Windowsに最初から入ってるし継承使えるけど
931デフォルトの名無しさん (ワッチョイ dfe6-sQ0+)
垢版 |
2020/12/10(木) 01:02:36.47ID:8uzpk1TB0
互換性というより下手な拡張のせいだと思うが
a&b&c と書けないのがムカつく
2020/12/10(木) 01:11:19.37ID:32G50CXp0
すでに引いてある枠線をすべてオートシェイプに置き換えることはできますか?
一括で変換できれば楽なんですが

そのようなことをしたい理由はExcelは先の太さのバリエーションがないのでオートシェイプで任意の太さの線にしたいからです
933デフォルトの名無しさん (ワッチョイ dfe6-sQ0+)
垢版 |
2020/12/10(木) 01:16:47.80ID:8uzpk1TB0
俺はしたいと思わないな
2020/12/10(木) 01:50:46.90ID:gCkd//in0
いつものあいつだろ
2020/12/10(木) 02:22:09.00ID:MSCfGM6q0
>>932
君ならできるだろ
2020/12/10(木) 03:30:03.52ID:YXjbRyJb0
ヤればできる!
避妊は忘れずに!
2020/12/10(木) 08:21:16.51ID:VUmLGrN10
何かもうここ機能していないですね
荒らししかいない感じだ
938デフォルトの名無しさん (ラクッペペ MM8f-sQ0+)
垢版 |
2020/12/10(木) 10:17:08.09ID:2F+mzzJFM
なら、お前が質問しろよ!
939デフォルトの名無しさん (ラクッペペ MM8f-sQ0+)
垢版 |
2020/12/10(木) 10:17:31.42ID:2F+mzzJFM
なら、お前が質問しろよ!
2020/12/10(木) 10:44:14.39ID:nD6J7euLd
>>932
できる
2020/12/10(木) 17:55:13.02ID:mXX17fjdH
>>929
読み取り専用にしたいとか変数格納時にチェックしたいとかかなあ
typeもろくに使ってないから難しい質問
2020/12/10(木) 18:15:54.30ID:cag4gSad0
>>941
まあそう言う要件あるならそりゃクラスにするしか無いわな
2020/12/10(木) 20:13:35.89ID:tORGV15wa
>>932
一回しか行わないわけだし手でやるのが普通ですよ
それにセルのサイズ変えたらズレるし
全部のセルの罫線みるのにどんだけ掛かるかw
944デフォルトの名無しさん (ワッチョイ dfe6-sQ0+)
垢版 |
2020/12/10(木) 20:47:29.63ID:8uzpk1TB0
どんだけ掛かるんだ?
2020/12/10(木) 21:11:52.00ID:CqzKSDKw0
C列になし、0、文字列があって、
条件分岐で
C列が文字列であれば転記する文字列をそれに変更。転機列のD列には転記しない
C列がなしであれば同じ行のD列を見に行ってブランクであれば文字列を転記、文字が既にあれば転記しない
C列が0であれば次の文字列まで移動

上記のようなのは関数だと不可能だと思うので、マクロでどのように作ればいいでしょうか
2020/12/10(木) 21:12:58.79ID:DnhQvLL+0
その通り作ればいいですよ
2020/12/10(木) 21:21:26.02ID:gchHSEuY0
>>945
>C列がなしであれば同じ行のD列を見に行ってブランクであれば文字列を転記、文字が既にあれば転記しない
この意味が分からんのだけど誰か翻訳頼む。
2020/12/10(木) 21:43:23.69ID:kT+M3PHp0
ある程度自分で考えてそれでもわからない部分を聞くとかならともかく、丸投げ質問はスルーでおk
2020/12/10(木) 21:46:13.21ID:62ZBW9sZ0
>>947
自分はむしろ
「C列が文字列であれば転記する文字列をそれに変更」
の方が分からん
2020/12/10(木) 21:49:42.57ID:v6PrCrQZ0
この手のタイプは自分の見てるものが他人には見えてないってことがいつも抜け落ちてる
2020/12/10(木) 21:55:21.01ID:TqxHVWGz0
仮に転記文字列がEなら

Cが0(数値)
 次のCまで移動
Cがなし
 D列がブランクならEからDに転記
Cが文字列
 EをCの文字列に変更、Dはそのまま
じゃないの?

でもなしとブランクが分かれてるのが謎
2020/12/10(木) 22:36:37.55ID:CqzKSDKw0
すいませんちょっと言葉が足りませんでした。
なしは単なる文字列のなしです
IFでなしという文字列があれば、現在設定している文字列をD列に書き出していく処理になります
C列   D列
りんご 
なし
0
0
みかん
なし

C D
りんご  (ブランク)
なし りんご
0 (ブランク)
0 (ブランク)
みかん (ブランク)
なし みかん


上記のような処理を作りたいです。
953デフォルトの名無しさん (ワッチョイ 7f63-JIxf)
垢版 |
2020/12/10(木) 22:48:25.04ID:56YuvF2X0
どうぞ作ってください。
2020/12/10(木) 22:56:25.81ID:CqzKSDKw0
条件分岐の所だけでもこういう感じで作ればいいというような回答を頂ければ助かります
かなり丸投げな質問になってすいません
2020/12/10(木) 22:57:22.97ID:YXjbRyJb0
四角投げくらいかな?
2020/12/10(木) 22:59:02.40ID:5Pf17kEC0
ちょっとみただけだけど関数でも頑張れば
作れそうに見えるがどうだろうか
2020/12/10(木) 23:05:18.21ID:DnhQvLL+0
回答しても助けになりそうも無い
2020/12/10(木) 23:06:01.55ID:5Pf17kEC0
別に頑張らなくても関数で出来た
頭硬すぎだろう
2020/12/10(木) 23:24:54.94ID:A+NuqwaS0
なしって入ったときに出てくるのがなしの1個上のセルの内容と決まってるなら関数でも書けるね
2020/12/10(木) 23:35:14.23ID:gchHSEuY0
このなぞなぞを思い出した
http://nazo2.myaasensei.com/?eid=90

なしなら「梨」と表記するか
別の果物、ぶどうとかすればいいのに
紛らわしい
2020/12/10(木) 23:53:09.24ID:v6PrCrQZ0
>>952
その条件通りにそのまま書き起こせば実現できることじゃないのか、複雑な処理がいるわけでもなし
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況