!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part68
https://mevius.5ch.net/test/read.cgi/tech/1598756127/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
探検
Excel VBA 質問スレ Part69
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 3fad-qZ/b)
2020/12/13(日) 00:22:23.67ID:Fd224klc0621デフォルトの名無しさん (ワッチョイ b7e5-XAOW)
2021/02/12(金) 22:29:40.24ID:aRG7/C7T0 よく分からんけどlet使えてことだろ
622デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/12(金) 22:35:41.83ID:jxDcSv/l0 >>620
ああ、なるほど名前の一種として関数定義ができるのか
再起を使えばチューリング完全にもなりそうだし、これいいな
ただ、また「(俺が見て)わけのわからん機能は使うな」とか老害に言われるんだろうなw
ああ、なるほど名前の一種として関数定義ができるのか
再起を使えばチューリング完全にもなりそうだし、これいいな
ただ、また「(俺が見て)わけのわからん機能は使うな」とか老害に言われるんだろうなw
623デフォルトの名無しさん (ワッチョイ d2e6-HHI4)
2021/02/12(金) 23:02:00.32ID:82D6PoJM0 vbaにLinq付けてくれたほうが喜ばれるぞ
624デフォルトの名無しさん (ワッチョイ 1279-oc8s)
2021/02/12(金) 23:07:09.02ID:GpQsWoGq0 Lambdaがファーストクラスオブジェクトなら以下のようなscheme風の無限ループも書ける
((lambda (x) (x x)) (lambda (x) (x x)))
VBAの時代は終わるかも
((lambda (x) (x x)) (lambda (x) (x x)))
VBAの時代は終わるかも
625デフォルトの名無しさん (ワッチョイ d2e6-HHI4)
2021/02/12(金) 23:12:05.58ID:82D6PoJM0 まともなセル内数式エディタは付きますか?
626デフォルトの名無しさん (ワッチョイ 9263-OxJ8)
2021/02/12(金) 23:18:29.37ID:00Lfe/Nd0 恐ろしいことにつくらしい
動画紹介でついてた
動画紹介でついてた
>>611
その lambda とやらは、不動点コンビネータを記述できるのですか?
その lambda とやらは、不動点コンビネータを記述できるのですか?
628デフォルトの名無しさん (JP 0Hdb-DrOF)
2021/02/13(土) 04:07:19.47ID:yi//B+MQH セキュリティでVBA禁止にしても、開いた瞬間に固まるブックが簡単に作れてしまうのかな
意図せず無限ループになったらデバッグが大変そう
意図せず無限ループになったらデバッグが大変そう
629デフォルトの名無しさん (ワッチョイ 124f-nOGz)
2021/02/13(土) 06:10:57.87ID:qLIOxiK10 へー
EXCELでLinqやラムダ式が書けるようになるのか
Linqやラムダ式は.Netでも便利だけど
開発者をふるいに掛けているものの一つだから
理解出来ない脱落者はEXCELやVBAの
開発ですら役立たずの烙印を押される
そんなときが来るなんて夢にも思って無かったな
EXCELでLinqやラムダ式が書けるようになるのか
Linqやラムダ式は.Netでも便利だけど
開発者をふるいに掛けているものの一つだから
理解出来ない脱落者はEXCELやVBAの
開発ですら役立たずの烙印を押される
そんなときが来るなんて夢にも思って無かったな
630デフォルトの名無しさん (ワッチョイ 124f-nOGz)
2021/02/13(土) 06:48:06.39ID:qLIOxiK10 あ、なんだ
VBAで使えたりLinqが使えるようになる訳では無いのか
あいつら基本レイトバインディングだからトレースするとき慣れてないと分かり辛いんだよな
良かったなお前ら
VBAで使えたりLinqが使えるようになる訳では無いのか
あいつら基本レイトバインディングだからトレースするとき慣れてないと分かり辛いんだよな
良かったなお前ら
631デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/13(土) 07:44:30.44ID:PYtZn7CJ0632デフォルトの名無しさん (ワッチョイ 9263-OxJ8)
2021/02/13(土) 07:56:56.81ID:IALcuoUI0 >>627
https://www.microsoft.com/en-us/research/blog/lambda-the-ultimatae-excel-worksheet-function/
LAMBDA is the true lambda that we know and love
you can define a fixed-point combinator
dekiru
https://www.microsoft.com/en-us/research/blog/lambda-the-ultimatae-excel-worksheet-function/
LAMBDA is the true lambda that we know and love
you can define a fixed-point combinator
dekiru
633デフォルトの名無しさん (ワッチョイ cbda-1Lsn)
2021/02/13(土) 11:41:30.80ID:PelpVnvk0634デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/13(土) 12:21:31.92ID:PYtZn7CJ0 >>633
例えば、A1, B1, C1セルの中身をカンマで繋いでD1に格納したい
その際セルが空なら"[空だよーん]"ってしたいとするでしょ
今までは
D1: =TEXTJOIN(", ", FALSE, IF(A1 = "", "[空だよーん]", A1), IF(B1 = "", "[空だよーん]", B1), IF(C1 = "", "[空だよーん]", C1))
って似たようなIF式を何度も書く必要があったけどLAMBDA使えたら
f: =LAMBDA(x, IF(x = "", "[空だよーん]", x))
って定義しておけば
D1: =TEXTJOIN(", ", FALSE, f(A1), f(B1), f(C1))
って書ける
さらに課長に"[空だよーん]"とかふざけんな、"[空でございます]"にしろって言われてもLAMBDAの1箇所を直すだけで済む
例えば、A1, B1, C1セルの中身をカンマで繋いでD1に格納したい
その際セルが空なら"[空だよーん]"ってしたいとするでしょ
今までは
D1: =TEXTJOIN(", ", FALSE, IF(A1 = "", "[空だよーん]", A1), IF(B1 = "", "[空だよーん]", B1), IF(C1 = "", "[空だよーん]", C1))
って似たようなIF式を何度も書く必要があったけどLAMBDA使えたら
f: =LAMBDA(x, IF(x = "", "[空だよーん]", x))
って定義しておけば
D1: =TEXTJOIN(", ", FALSE, f(A1), f(B1), f(C1))
って書ける
さらに課長に"[空だよーん]"とかふざけんな、"[空でございます]"にしろって言われてもLAMBDAの1箇所を直すだけで済む
635デフォルトの名無しさん (ササクッテロ Spc7-nOGz)
2021/02/13(土) 12:41:35.80ID:BN4b1mTrp >>633
40のお前がバレンタインデーでチョコ貰えるくらい凄い
40のお前がバレンタインデーでチョコ貰えるくらい凄い
636デフォルトの名無しさん (ワッチョイ cbda-1Lsn)
2021/02/13(土) 12:49:30.81ID:PelpVnvk0 >>635
(>_<)\
(>_<)\
637デフォルトの名無しさん (ワッチョイ 9263-OxJ8)
2021/02/13(土) 14:07:20.92ID:IALcuoUI0 ただの関数定義じゃないか
それで十分だった気はするが
それで十分だった気はするが
638デフォルトの名無しさん (ワッチョイ 6310-KgTK)
2021/02/13(土) 15:14:43.31ID:wz9KaBQo0 VBAに影響ほとんどなさそう
一発でピボ集計とかシート挿入とかに関係ないし
一発でピボ集計とかシート挿入とかに関係ないし
639デフォルトの名無しさん (ワッチョイ cfac-z198)
2021/02/13(土) 15:33:24.19ID:QpeYGISo0 と言うかラムダ式書けるなら、ついでにセル内でも数式の改行とインデントができるようにしてくれればよかったのにな
Excel職人のIFだらけの数式を読むのがまずキツイんだは
Excel職人のIFだらけの数式を読むのがまずキツイんだは
640デフォルトの名無しさん (ワッチョイ 335f-ZwSN)
2021/02/13(土) 15:40:56.55ID:jHG+5C+w0 セルで分ければいいんだけど一つの数式にまとめられるのがすごいと思ってるからな
まあ自分もそうだったけど
まあ自分もそうだったけど
641デフォルトの名無しさん (ワッチョイ a37c-oFCC)
2021/02/13(土) 17:28:35.52ID:VP7xI/GI0 単に複数セル使うのが嫌なだけってのが多いように見える
642デフォルトの名無しさん (JP 0Hdb-DrOF)
2021/02/13(土) 18:42:07.48ID:yi//B+MQH まとめて印刷とか名前を付けて保存みたいな手作業を置き換えるVBAはなくならないかな
643デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/13(土) 19:19:56.21ID:PYtZn7CJ0 >>639
> セル内でも数式の改行とインデントができるようにしてくれればよかったのにな
それ昔からできるぞ…
https://www.becoolusers.com/excel/img/long-formula-line-break20.png
> セル内でも数式の改行とインデントができるようにしてくれればよかったのにな
それ昔からできるぞ…
https://www.becoolusers.com/excel/img/long-formula-line-break20.png
644デフォルトの名無しさん (ワッチョイ 335f-6eOQ)
2021/02/13(土) 19:28:08.81ID:jHG+5C+w0 営業の要ミーティング恐い((((;゚Д゚)))))))
645デフォルトの名無しさん (スッップ Sd32-k3oY)
2021/02/13(土) 21:29:40.36ID:T3s5Sft8d646デフォルトの名無しさん (ワッチョイ 6310-KgTK)
2021/02/13(土) 21:48:38.47ID:wz9KaBQo0 うかる!って、説明ヘタだね…
647デフォルトの名無しさん (ワッチョイ b7e5-XAOW)
2021/02/13(土) 22:16:40.52ID:OlVotr6u0 職場にIf and orの職人がいるオレに謝れ
648デフォルトの名無しさん (ワッチョイ 47a5-oFCC)
2021/02/13(土) 23:44:53.12ID:29TtheM20 んー? 今までセル内の数式って受身の動きだったけど
それ実装すれば自発的に動けるようになるってこと?
それ実装すれば自発的に動けるようになるってこと?
649デフォルトの名無しさん (ワッチョイ cfac-z198)
2021/02/14(日) 00:40:24.25ID:X0FsHGir0650デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/14(日) 00:53:19.53ID:D24G58JB0651デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/14(日) 00:53:54.05ID:D24G58JB0 >>649
まあ俺もつい1年ぐらい前に知ったんだけどw
まあ俺もつい1年ぐらい前に知ったんだけどw
652デフォルトの名無しさん (ワッチョイ a701-qH/C)
2021/02/14(日) 05:33:27.25ID:8cTA8eHd0 それよりかパイプライン演算子を実装して欲しい
ラムダ関数はその足掛かりな気もするけど
ラムダ関数はその足掛かりな気もするけど
653デフォルトの名無しさん (ブーイモ MMdb-DrOF)
2021/02/14(日) 08:25:32.74ID:0LuW/JvdM セルの書式を調べる関数はよ
654デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/14(日) 09:01:53.08ID:D24G58JB0655デフォルトの名無しさん (ワッチョイ 335f-Rooy)
2021/02/14(日) 09:44:10.83ID:9bE5PNm50 EXCELって意外と古いの使ってたりするから受け渡しがどうかな
656デフォルトの名無しさん (ワッチョイ 1e68-DrOF)
2021/02/14(日) 09:46:12.37ID:HYvJ8gAi0 >>652
一部がダメ文字の文字コード
一部がダメ文字の文字コード
657デフォルトの名無しさん (ブーイモ MM0e-DrOF)
2021/02/14(日) 10:33:56.69ID:ccxL17vjM658デフォルトの名無しさん (ワッチョイ 16da-DrOF)
2021/02/14(日) 10:46:19.10ID:IPhvN32f0659デフォルトの名無しさん (ワッチョイ 16da-DrOF)
2021/02/14(日) 10:47:17.03ID:IPhvN32f0 ありゃ。本人からの返事の方が早かった
660デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/14(日) 11:28:53.22ID:D24G58JB0661デフォルトの名無しさん (ワッチョイ 92da-pCKf)
2021/02/14(日) 16:36:27.43ID:W30Sj/2D0 VBAはSelectのCaseで、False,Empty,Nullあたりが同一判定されて、個々に行えないのがクソ
662デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/14(日) 17:23:19.56ID:D24G58JB0663デフォルトの名無しさん (ワッチョイ 1663-OxJ8)
2021/02/14(日) 19:08:55.75ID:hT3ZVIIc0 ねこ
664デフォルトの名無しさん (ワッチョイ 53fd-OxJ8)
2021/02/15(月) 11:39:26.92ID:S0ZRmbKV0 DIR関数を利用して以下のりようなロジックを見たのですが、
foldercheck = (Dir(wrkpath, vbDirectory) <> "")
()の中のロジックはどのような技法なんでしょうか
if Dir(wrkpath, vbDirectory) <> " then
foldercheck = (Dir(wrkpath, vbDirectory) <> "")
()の中のロジックはどのような技法なんでしょうか
if Dir(wrkpath, vbDirectory) <> " then
665664 (ワッチョイ 53fd-OxJ8)
2021/02/15(月) 13:15:47.99ID:S0ZRmbKV0 https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/comparison-operators
Dim MyResult, Var1, Var2
MyResult = (45 < 35) ' Returns False.
MyResult = (45 = 45) ' Returns True.
自己解決しました。上記と同じなのですね。お騒がせしました。
Dim MyResult, Var1, Var2
MyResult = (45 < 35) ' Returns False.
MyResult = (45 = 45) ' Returns True.
自己解決しました。上記と同じなのですね。お騒がせしました。
666デフォルトの名無しさん (オッペケ Src7-Wb2C)
2021/02/15(月) 19:45:33.20ID:olEKN+utr フォルダへの書き込みのアクセス権をチェックするようなサンプルないですかね。
イメージとしてはフォームのフォルダ選択ボタンを押して選んだフォルダが書き込みできなければ選んだ時点でそういうメッセージを出したい。このあとアウトプットフォイルを書き込む際にエラーが出る前に
イメージとしてはフォームのフォルダ選択ボタンを押して選んだフォルダが書き込みできなければ選んだ時点でそういうメッセージを出したい。このあとアウトプットフォイルを書き込む際にエラーが出る前に
667デフォルトの名無しさん (JP 0Hdb-DrOF)
2021/02/15(月) 20:10:33.97ID:xaJaofAeH >>666
まじめにやるならGetFileSecurityとGetAclInformationを使う
もっと簡単にやりたかったら、ダミーのファイルを1つ作ってみてOn Errorでエラーになったかどうか判定
まじめにやるならGetFileSecurityとGetAclInformationを使う
もっと簡単にやりたかったら、ダミーのファイルを1つ作ってみてOn Errorでエラーになったかどうか判定
668デフォルトの名無しさん (ワッチョイ 6310-KgTK)
2021/02/15(月) 20:15:42.96ID:nKU68rXI0 FSOのGetFileでフォルダーを取得して
Attlibutesプロパティ見ればいいんでないかな
Attlibutesプロパティ見ればいいんでないかな
669デフォルトの名無しさん (ワッチョイ 6310-KgTK)
2021/02/15(月) 20:16:42.83ID:nKU68rXI0670デフォルトの名無しさん (ワッチョイ d2e6-HHI4)
2021/02/15(月) 20:30:32.32ID:btvLdCUB0671デフォルトの名無しさん (ワッチョイ 1279-oc8s)
2021/02/15(月) 22:00:51.83ID:iJ9piVTy0 普通にicacls呼べばいいじゃん
672デフォルトの名無しさん (ワッチョイ 92da-pCKf)
2021/02/15(月) 22:59:53.76ID:R4sT9O4+0673デフォルトの名無しさん (ワッチョイ 335f-6eOQ)
2021/02/15(月) 23:48:13.25ID:yTkZToOt0 isnullはあったよなたしか
674デフォルトの名無しさん (バットンキン MM3b-ciZU)
2021/02/16(火) 02:55:26.52ID:nbeJO0KhM CSV形式で保存する前に、Serial値の表示形式をyyyy/m/dにマクロから変更して
保存してからその後開くと、"1/1/2020"とか意味分からんStr型になっちゃうんだけど、
誰か分かるひといる?
csvを取り込むソフトがどうしてもこの表示形式に変更しないと、うまく取り込めない謎仕様なんだ。
ちなみに、いったん保存してから開いてやってもダメだった。
(もちろん、手作業で開いて表示形式変更したらバグらないんだけど・・・)
rngObj.NumberFormatLocal = "yyyy/m/d"
保存してからその後開くと、"1/1/2020"とか意味分からんStr型になっちゃうんだけど、
誰か分かるひといる?
csvを取り込むソフトがどうしてもこの表示形式に変更しないと、うまく取り込めない謎仕様なんだ。
ちなみに、いったん保存してから開いてやってもダメだった。
(もちろん、手作業で開いて表示形式変更したらバグらないんだけど・・・)
rngObj.NumberFormatLocal = "yyyy/m/d"
675デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/16(火) 07:43:45.82ID:+oOyZ54g0676デフォルトの名無しさん (ワッチョイ 1e68-DrOF)
2021/02/16(火) 10:30:54.61ID:OCcCJKsW0 整数の1と小数の1.0だと値(バイナリ)が違うって知ったら狂いそうだな
677デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/16(火) 11:04:29.70ID:+oOyZ54g0 >>674
いま手元にExcelないから確認できないけど
rngObj.NumberFormat = "yyyy/m/d"
か
book.SaveAs …, Local:=True
に、してみたらどうかな
いま手元にExcelないから確認できないけど
rngObj.NumberFormat = "yyyy/m/d"
か
book.SaveAs …, Local:=True
に、してみたらどうかな
678デフォルトの名無しさん (ワッチョイ 12ad-Ible)
2021/02/16(火) 11:41:24.25ID:XpWP4Lg+0 2021/2/15 6:43
みたいに、時間が入ったセルの、
日付の部分
だけ変えたいんですがやり方がわからないです
セルの日付(2021/2/15)を変数で定義して、新たな日付(2021/2/16)の変数も定義して
replace(セルの位置,セルの日付,新たな日付)
で入れ替えようとすると型が合わないって出てしまうのですが
どうすればいいでしょうか?
みたいに、時間が入ったセルの、
日付の部分
だけ変えたいんですがやり方がわからないです
セルの日付(2021/2/15)を変数で定義して、新たな日付(2021/2/16)の変数も定義して
replace(セルの位置,セルの日付,新たな日付)
で入れ替えようとすると型が合わないって出てしまうのですが
どうすればいいでしょうか?
679デフォルトの名無しさん (アウアウウー Sac3-y1fs)
2021/02/16(火) 11:56:30.35ID:S5ddSisTa >>678
もしかして変数で定義してる型がDateだったり?
もしかして変数で定義してる型がDateだったり?
680デフォルトの名無しさん (ワッチョイ 12ad-Ible)
2021/02/16(火) 11:58:31.61ID:XpWP4Lg+0 >>679
dateとstring両方試しました
dateとstring両方試しました
681デフォルトの名無しさん (ブーイモ MMdb-Cr/x)
2021/02/16(火) 12:13:25.96ID:9n1pp/97M CStr(Format(a,″yyyy/m/d“))
682デフォルトの名無しさん (ワッチョイ 12ad-Ible)
2021/02/16(火) 12:24:02.20ID:XpWP4Lg+0 すいません自己解決しました
変数の定義がおなしかったみたいです
変数の定義がおなしかったみたいです
683デフォルトの名無しさん (バットンキン MM3b-ciZU)
2021/02/16(火) 13:04:12.03ID:nbeJO0KhM >>677
いけましたサンクス!!!
いけましたサンクス!!!
684666 (オッペケ Src7-Wb2C)
2021/02/16(火) 19:15:33.72ID:+pX1epGPr 遅くなりましたが、結局Dummyファイルの書き込みにしました。アドバイス頂いた方ありがとうございました。
685デフォルトの名無しさん (アウアウエー Saaa-tVK2)
2021/02/16(火) 21:00:08.21ID:PQjj23xSa スミマセン、セルの特殊な機能だと思うのですが、
セルにポインタを合わせると、セルの外側右下に小さな▼が出現、
▼を押すとセルの下に小さなウィンドウが展開し、羅列された文字や数字を選択できる。
上記機能の名称とは何なのか、
どこでイジれるのか、作成できるのか等わからず困ってしまいました。
機能が生きているセルもありましたため、
新規で作成せずともその機能をコピーしようともしましたが方法わからず。
お詳しい方いらっしゃいましたら
お力添え願いたいです。
失礼します。
セルにポインタを合わせると、セルの外側右下に小さな▼が出現、
▼を押すとセルの下に小さなウィンドウが展開し、羅列された文字や数字を選択できる。
上記機能の名称とは何なのか、
どこでイジれるのか、作成できるのか等わからず困ってしまいました。
機能が生きているセルもありましたため、
新規で作成せずともその機能をコピーしようともしましたが方法わからず。
お詳しい方いらっしゃいましたら
お力添え願いたいです。
失礼します。
686デフォルトの名無しさん (ワッチョイ 5322-GfrP)
2021/02/16(火) 21:24:43.99ID:kmFmEkS70 VBAとは関係なく
「セルの入力規則」から「リスト」を選択してあとは適宜
詳細は上記キーワードで検索して
「セルの入力規則」から「リスト」を選択してあとは適宜
詳細は上記キーワードで検索して
687デフォルトの名無しさん (オッペケ Src7-B7l3)
2021/02/16(火) 22:46:03.00ID:g3oiZXVYr 教えていただけると助かります。
VBAでIEからExcelに文章を写したいです。
アクティブなIEからカーソルで範囲指定して、その内容を写すことは可能なのでしょうか?
例えば、ヤフーで気になる記事の内容だけをコピペといった感じです。
気になるものだけなので、検索を入れ込む必要はないです。
IEとYahoo起動まではできるのですが、その先が分かりません。
よろしくお願いいたします。
VBAでIEからExcelに文章を写したいです。
アクティブなIEからカーソルで範囲指定して、その内容を写すことは可能なのでしょうか?
例えば、ヤフーで気になる記事の内容だけをコピペといった感じです。
気になるものだけなので、検索を入れ込む必要はないです。
IEとYahoo起動まではできるのですが、その先が分かりません。
よろしくお願いいたします。
688デフォルトの名無しさん (ワッチョイ 9242-duN9)
2021/02/16(火) 23:02:29.70ID:LtHH0x/40 それ手動でコピペしたほうが早いんじゃね
689デフォルトの名無しさん (ワッチョイ dfda-4u9f)
2021/02/16(火) 23:41:10.89ID:5LT5VcGn0 気になる記事の条件は?
それを自分で判断するなら>>688が正解だと思うが
それを自分で判断するなら>>688が正解だと思うが
690デフォルトの名無しさん (ワッチョイ 124f-nOGz)
2021/02/17(水) 09:01:14.53ID:tQXaEzsv0691デフォルトの名無しさん (ワッチョイ 975f-B4ia)
2021/02/17(水) 10:16:38.01ID:vOoN+LpT0 >>690
優しすぎる
優しすぎる
692デフォルトの名無しさん (ワッチョイ 1601-tVK2)
2021/02/17(水) 12:53:19.33ID:3Z4/s25m0693デフォルトの名無しさん (オッペケ Src7-z198)
2021/02/17(水) 12:57:54.00ID:quEf8nPTr いえいえ
694デフォルトの名無しさん (JP 0Hdb-DrOF)
2021/02/17(水) 12:59:55.94ID:Mp3MtPnAH クリップボードを監視して、新しいデータがコピーされるたびに保存してくれるアプリとか使えばいいんじゃない?
いちいちウィンドウを切り替えたりペーストしなくていいやつあるだろ
いちいちウィンドウを切り替えたりペーストしなくていいやつあるだろ
695デフォルトの名無しさん (スッップ Sd32-tVK2)
2021/02/17(水) 15:46:44.57ID:i293dZUhd696デフォルトの名無しさん (ワッチョイ f215-LlBx)
2021/02/17(水) 22:01:12.58ID:YnE2/fOB0 最終列までコピーをしたいんですがエラーを繰り返しなかなか実現できません…
例えばA3セルがデータの始まりでA7セルが最終列の場合、以下の文になるかと思いますRange(“A3:A7”).copy
ただ、半年に一度最終列が一列追加になるので、メンテナンスしなくていいように上の文のA7の部分が最終列になるようにしたいです
この場合何かいい方法はあるでしょうか
例えばA3セルがデータの始まりでA7セルが最終列の場合、以下の文になるかと思いますRange(“A3:A7”).copy
ただ、半年に一度最終列が一列追加になるので、メンテナンスしなくていいように上の文のA7の部分が最終列になるようにしたいです
この場合何かいい方法はあるでしょうか
697デフォルトの名無しさん (ワッチョイ 335f-6eOQ)
2021/02/17(水) 22:41:15.13ID:FtApzB1S0 行じゃなくて列?
698デフォルトの名無しさん (ワッチョイ dfda-sg8N)
2021/02/17(水) 22:42:03.66ID:tZ0yQ1Z/0 オーソドックスなのはこれだけど、物凄い珍回答を聞いてみたいわ
Range("A3:A" & Cells(Rows.Count, 1).End(xlUp).Row).Copy
Range("A3:A" & Cells(Rows.Count, 1).End(xlUp).Row).Copy
699デフォルトの名無しさん (ワッチョイ 1279-oc8s)
2021/02/17(水) 22:45:44.66ID:LXOFF6tt0 >>696
last_row = Sheet1.UsedRange.Row + Sheet1.UsedRange.Rows.Count - 1
last_col = Sheet1.UsedRange.Column + Sheet1.UsedRange.Columns.Count - 1
Debug.Print "A3:" & Sheet1.Cells(last_row, last_col).Address(RowAbsolute:=False, ColumnAbsolute:=False)
こんなん?
last_row = Sheet1.UsedRange.Row + Sheet1.UsedRange.Rows.Count - 1
last_col = Sheet1.UsedRange.Column + Sheet1.UsedRange.Columns.Count - 1
Debug.Print "A3:" & Sheet1.Cells(last_row, last_col).Address(RowAbsolute:=False, ColumnAbsolute:=False)
こんなん?
700デフォルトの名無しさん (オッペケ Src7-B7l3)
2021/02/17(水) 22:46:54.85ID:bJ7UNxEFr >>690
ありがとうございます❗
探してたものに出会えました。
ググってはみたんですが、このサイトには巡り会えなかったので、本当に助かります。
やってみたら、思う結果になりました。
ありがとうございました。
ありがとうございます❗
探してたものに出会えました。
ググってはみたんですが、このサイトには巡り会えなかったので、本当に助かります。
やってみたら、思う結果になりました。
ありがとうございました。
701デフォルトの名無しさん (ワッチョイ f215-LlBx)
2021/02/17(水) 22:47:30.28ID:YnE2/fOB0 行じゃなく列です
最終列が半年に一回追加になるのです…
最終列が半年に一回追加になるのです…
702デフォルトの名無しさん (ワッチョイ f215-LlBx)
2021/02/17(水) 22:50:45.05ID:YnE2/fOB0 >>697
ごめんなさい、最終列の話だったのでA3セルからD3セルをコピーする場合、以下になるんでした
Range(“A3:D3).copy
今はD3が最終列ですが、半年後にはD3が最終列になるイメージです
ごめんなさい、最終列の話だったのでA3セルからD3セルをコピーする場合、以下になるんでした
Range(“A3:D3).copy
今はD3が最終列ですが、半年後にはD3が最終列になるイメージです
703696 (ワッチョイ f215-LlBx)
2021/02/17(水) 22:51:42.12ID:YnE2/fOB0 何度も間違えてすみません…
今はD3が最終列ですが半年後にはE3が最終列になるの間違いでした
今はD3が最終列ですが半年後にはE3が最終列になるの間違いでした
704デフォルトの名無しさん (ワッチョイ a37c-oFCC)
2021/02/17(水) 22:55:52.03ID:X7VrF3DN0 最終列取得の仕方調べないの?
705デフォルトの名無しさん (ワッチョイ 335f-6eOQ)
2021/02/17(水) 23:06:07.99ID:FtApzB1S0 Range("A3").CurrentRegion.Copy
706デフォルトの名無しさん (ワッチョイ 92ad-Cr/x)
2021/02/17(水) 23:08:53.17ID:ooyd3US+0 ColLst = Sheet1.Сells(3,Columns.Count).End(xIToLeft).Column
Range(Sheet1.Cells(3,1),Sheet1.Сells(3,ColLst))
みたいにケツのColumnIndexを可変化させりゃええ
指定範囲より右側にコメントが入るのであれば別の方法を考える必要があるけど
Range(Sheet1.Cells(3,1),Sheet1.Сells(3,ColLst))
みたいにケツのColumnIndexを可変化させりゃええ
指定範囲より右側にコメントが入るのであれば別の方法を考える必要があるけど
707デフォルトの名無しさん (ワッチョイ 1279-oc8s)
2021/02/17(水) 23:09:11.52ID:LXOFF6tt0 CurrentRegionは使えそうで使わない
708デフォルトの名無しさん (ワッチョイ 335f-6eOQ)
2021/02/17(水) 23:16:43.14ID:FtApzB1S0 UsedRangeだって使うの怖ない?
どっかにドットあるだけども持ってかれる
どっかにドットあるだけども持ってかれる
709デフォルトの名無しさん (ワッチョイ dfda-sg8N)
2021/02/17(水) 23:18:02.78ID:tZ0yQ1Z/0 これってやり方は何通りかあるけど、
どの状況でも使える完璧なのが無いよな
一見よさげなUsedRange.Find法とかも、
検索と置換の状態が変わっちゃうし
どの状況でも使える完璧なのが無いよな
一見よさげなUsedRange.Find法とかも、
検索と置換の状態が変わっちゃうし
710デフォルトの名無しさん (ワッチョイ 1279-oc8s)
2021/02/17(水) 23:21:06.27ID:LXOFF6tt0 ちゃんとやりたい場合列のヘッダの名前の有無を確認とか意味解析するしかないよ
711デフォルトの名無しさん (ワッチョイ 92da-ciZU)
2021/02/18(木) 00:18:06.29ID:ZQty99yr0 vbaしかつかえないうんちなんだけど、ダイアログに変数名入れたら、その名前を反映させた定型コード作ってくれるような支援ソフトないの?
たとえば、Dim var: var= xとかFor i=LBound(arr) to UBound(arr)とか。いちいちめんどい。
cliborはつかってる。スレチだったらすまそ。
たとえば、Dim var: var= xとかFor i=LBound(arr) to UBound(arr)とか。いちいちめんどい。
cliborはつかってる。スレチだったらすまそ。
712デフォルトの名無しさん (ワッチョイ 6310-KgTK)
2021/02/18(木) 02:16:18.22ID:QcGF+jUk0 それこそ自分で作れよ
自分だけにに都合よく自動化したいならそれしかないだろ
自分だけにに都合よく自動化したいならそれしかないだろ
713デフォルトの名無しさん (ワッチョイ 124f-nOGz)
2021/02/18(木) 08:21:36.53ID:sd++046d0 >>711
そういうの別言語だと見たことあるけど
VBAでは諦めた方がいいんじゃないかなぁ
https://mobile.twitter.com/johnsundell/status/1221758718188060673
こういう奴でしょ?
https://twitter.com/5chan_nel (5ch newer account)
そういうの別言語だと見たことあるけど
VBAでは諦めた方がいいんじゃないかなぁ
https://mobile.twitter.com/johnsundell/status/1221758718188060673
こういう奴でしょ?
https://twitter.com/5chan_nel (5ch newer account)
714696 (ワッチョイ f215-LlBx)
2021/02/18(木) 08:30:28.40ID:0xKDo7Uv0 最終列の取得をしてコピーしたいと申した者です
具体的には2シート目以降のC8セルから最終列までコピペしたくこのような文を書いてました
Maxcol = Worksheets(1).Range(“C8”).End(XlToRight).Column
For i = 2 To Worksheets.Count
Worksheets(i) = Range(Cells(8,3), Cells(8, Maxcol)).Copy
Worksheet(1).Cells(Maxrow,1).PasteSpecial Paste:=xlPasteValues
Maxrow = Maxrow + 1
Next i
上には書いていませんがMaxRowで最終行していて、1シート目の最終行にペーストするイメージです
このとき以下の箇所でエラーになりました
Worksheets(i) = Range(Cells(8,3), Cells(8, Maxcol)).Copy
具体的には2シート目以降のC8セルから最終列までコピペしたくこのような文を書いてました
Maxcol = Worksheets(1).Range(“C8”).End(XlToRight).Column
For i = 2 To Worksheets.Count
Worksheets(i) = Range(Cells(8,3), Cells(8, Maxcol)).Copy
Worksheet(1).Cells(Maxrow,1).PasteSpecial Paste:=xlPasteValues
Maxrow = Maxrow + 1
Next i
上には書いていませんがMaxRowで最終行していて、1シート目の最終行にペーストするイメージです
このとき以下の箇所でエラーになりました
Worksheets(i) = Range(Cells(8,3), Cells(8, Maxcol)).Copy
715デフォルトの名無しさん (バットンキン MM3b-ciZU)
2021/02/18(木) 08:31:50.99ID:cssKdxraM >>713
やっぱVbaだと厳しいか、、、別言語だとこんなのあるんだな!ありがとう。
やっぱVbaだと厳しいか、、、別言語だとこんなのあるんだな!ありがとう。
716696 (ワッチョイ f215-LlBx)
2021/02/18(木) 08:45:37.53ID:0xKDo7Uv0 解決しました…
Rangeの中にCellsを入れる際はCellsの方にもワークシート名を記載してあげなければいけなかったんですね…
お騒がせしました
Rangeの中にCellsを入れる際はCellsの方にもワークシート名を記載してあげなければいけなかったんですね…
お騒がせしました
717デフォルトの名無しさん (ラクッペペ MMde-HHI4)
2021/02/18(木) 10:27:10.11ID:4sNPnSsIM 4点指定でrange作れればいいのにね
718デフォルトの名無しさん (ワッチョイ 1201-EsoH)
2021/02/18(木) 13:38:16.10ID:EVRbmhyV0 >>717
まあ、
Sheet.Cells(開始行, 開始列).Resize(行数, 列数)
もしくは
Sheet.Cells(開始行, 開始列).Resize(終了行 - 開始行 + 1, 終了列 - 開始列 + 1)
ってやるだけだし
まあ、
Sheet.Cells(開始行, 開始列).Resize(行数, 列数)
もしくは
Sheet.Cells(開始行, 開始列).Resize(終了行 - 開始行 + 1, 終了列 - 開始列 + 1)
ってやるだけだし
719デフォルトの名無しさん (テテンテンテン MMde-ZwSN)
2021/02/18(木) 17:41:06.06ID:Khd0zmwWM720デフォルトの名無しさん (ワッチョイ a701-qH/C)
2021/02/18(木) 20:47:31.34ID:Sdz2Rpjn0 コンパイルしたときに「ユーザー定義型は使用できません」といったようなエラーが出るのですが、
エラー箇所が選択されず特定できません。
ググってみたのですが「関数を一個ずつ切り貼りしながらコンパイル」的な記事しかなく、
結構大きなプロジェクトファイルになってしまっていて現実的ではありません。
原因って何が考えられますでしょうか。
エラー箇所が選択されず特定できません。
ググってみたのですが「関数を一個ずつ切り貼りしながらコンパイル」的な記事しかなく、
結構大きなプロジェクトファイルになってしまっていて現実的ではありません。
原因って何が考えられますでしょうか。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国軍機レーダー照射、トランプ氏沈黙突く 試される日本外交 ★4 [蚤の市★]
- バリ島で男子生徒ら集団万引きか、防犯カメラ映像が拡散 京都の大谷中学・高校が「窃盗行為」謝罪★5 [七波羅探題★]
- 【速報】 米トランプ政権声明 「中国が台湾を奪おうとする、いかなる試みも阻止する」 中国「レッドラインだ」 ★2 [お断り★]
- 元プロ野球選手・堂上隼人(43)を20代女性2人へのわいせつ未遂容疑で8回目の逮捕…これまでの被害者は10代・20代の女性11人に [Anonymous★]
- 「残業キャンセル界隈」若者が増加?「職務放棄」との批判も…“定時退社の権利”どこまで通用するか [七波羅探題★]
- 【高校野球】なぜ『7回制』は反対多数でも止まらないか… 高野連が「全員の命」守るために貫く伝統より改革の姿勢 [冬月記者★]
- 【悲報】地銀や生保 長期金利急上昇で含み損が加速 [358382861]
- 【高市悲報】自衛隊「実は事前に現場海域で中国軍から空母での発着訓練をすると通告がありました」え…?😨😨 [931948549]
- 【速報】旧統一教会会長が辞任 [459590647]
- 【高市速報】中国「このままだと日本が先制攻撃してくる」 [583597859]
- めんどくさくて放置してること
- AI「その画像AIだぞ」AIぼく「そうなんだ助かる」
