[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/05 07:16 / Filesize : 254 KB / Number-of Response : 1006
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part69



1 名前:デフォルトの名無しさん mailto:sage [2020/12/13(日) 00:22:23.67 ID:Fd224klc0.net]
!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

774 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 10:42:13.72 ID:MpvSTRAea.net]
ウイルスの作り方探してるのかな

775 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 16:48:22.46 ID:9QiTc1mX0.net]
質問です。
VBAでウィンドウの幅によってレイアウトが変化するページを取り込む方法で詰まっています。

例えば、下記のURLのテーブル「5」をExcelに取り込みたいとします。
しかし、このページはウィンドウの幅を狭くすると「自動レイアウト」になります。
https://www.nankankeiba.com/uma_info/2014104006.do

https://i.imgur.com/EE2hZfE.png

本当はPC固定レイアウトで取り込みたいのですが、下のVBAだと自動レイアウトの方で取り込まれてしまうのですが
どうしたらよろしいでしょうか。
VBA
https://i.imgur.com/tQsJ8fB.png

PC固定のレイアウトで取り込みたいけど、取り込むとこうなる
https://i.imgur.com/106irI4.png

776 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 16:50:21.04 ID:9QiTc1mX0.net]
>>773
列や行の関係でPC固定で取り込めるようにしたいのですが、クエリで何か設定などあるのでしょうか

777 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 19:51:14.14 ID:qDfn4Zqt0.net]
>>774
よくわからんが内容は正しく取得できているんだから、表示用のシート作って
そっちに2行を1行にまとめて表示させるマクロ書けばいいんじゃね

778 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 20:13:53.31 ID:9QiTc1mX0.net]
>>775
実は最近サイトがスマホ用に「自動レイアウト」に対応してリニューアルしたので
もともと作ってあった表示用シートが連れてしまうために「PC固定レイアウト」にしたいのです…

779 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 20:25:57.30 ID:Ydjbk0QN0.net]
URLの後ろに何か引数入れればいいんだろうけど、javascript読めんからわからん。
Web系のスレで聞くか、ここでやるんだったらDOM解析してgetElementsByTagNameとかで取得するしかない。

780 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 20:28:08.24 ID:9QiTc1mX0.net]
>>777
やっぱりweb系のプログラミング知識がないと無理っぽいですかね
自分はさっぱりなので、そっち系でも聞いてみます。

781 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 20:46:04.22 ID:Ydjbk0QN0.net]
ってそれExcel2013?
2019だとどちらも見えていて、
Table4が自動でTable5が固定になっている。

もし2019が使えるなら、QueryTables.Addじゃなくて、
Queries.Addでやってみるといい。

782 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 21:38:16.92 ID:9QiTc1mX0.net]
>>779
わあああ!できました!!!
自分のだと、テーブル5だと自動で、テーブル6が固定でした!!
固定と自動でテーブルずらすだけで良かったんですね。
本当に助かりました;;感謝!



783 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 21:44:40.46 ID:9QiTc1mX0.net]
なるほどー
URLの違いじゃなくてテーブル数が増えていてテーブルの変更でレイアウトを別々で読み取っていたんですね
今後も参考になる知識でめっちゃタメになりました!
いやーID:Ydjbk0QN0さんの着眼点のおかげで助かりました。感動です

784 名前:デフォルトの名無しさん mailto:sage [2021/02/27(土) 23:59:01.77 ID:W4zZ+WShM.net]
いいってことよ(≧∇≦)b

785 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 00:38:35.67 ID:1YMxSz2W0.net]
XMLを取得したあと、要素を取得するためにgetElementByIdを使用する方法は無いでしょうか?
XMLでは仕様上IDの規定が無いのでこのメソッドは無いようですが、
対象にしているデータはIDが重複していない(タグ名は重複)ことが分かっています

786 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 08:33:47.20 ID:0O+t6o860.net]
やったことないけどXMLをブラウザーで開いて取得とか

787 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 13:49:51.41 ID:0oELj/fSM.net]
>>783
単なる属性値だからxpathで属性検索すればいいんじゃね?

788 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 17:16:05.41 ID:1YMxSz2W0.net]
>>785
ごめんなさいこれで出来ました
コーディングミスしてただけだったようで…

789 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 23:20:44.51 ID:Kw7HIYRo0.net]
テーブルを使った列転記について質問です。
オートフィルターを使って、
特定条件に合致する列のみを別シートに転記するvbaを作成しています。
検索条件が1件でもヒットすれば、うまく動くのですが、
検索条件の結果が0件の場合、なぜかテーブル内にある全ての列がコピーされてしまいます。
解決方法をご教示いただけたら幸いです。

With Range("A3").ListObject
   .Range.AutoFilter 1, "佐藤"
.Range.AutoFilter 2,"2020"
.Range.AutoFilter 3, "土地"

.ListColumns(4).DataBodyRange.Copy Sheets(2).Range("B12")
.ListColumns(5).DataBodyRange.Copy Sheets(2).Range("D12")
.ListColumns(6).DataBodyRange.Copy Sheets(2).Range("C12")
End With

790 名前:デフォルトの名無しさん mailto:sage [2021/02/28(日) 23:38:01.73 ID:aFXd9lq10.net]
0の時コピペしない

791 名前:デフォルトの名無しさん mailto:sage [2021/03/01(月) 03:56:15.13 ID:eH/icf8Z0.net]
Countifsで、1件以上の時 と
条件分岐させるのが読み返してわかりやすくなるんでね

792 名前:デフォルトの名無しさん mailto:sage [2021/03/01(月) 16:05:10.88 ID:SmQDGBhxa.net]
前回の表示が残っているならメッセージボックスとか出すといいかも



793 名前:デフォルトの名無しさん [2021/03/02(火) 13:09:41.26 ID:hWjLfumtC.net]
(1)A1〜A100セルにそれぞれ0001.txt〜0100.txtという文字列が格納されている
(2)ファイルサーバ上(\\share\txt)に(1)の名前と対応する実際のテキストファイルが格納されている

→この場合、B1〜B100セルの中に(1)と対応する(2)のテキストファイルの中身を自動で入力させたいのですが、どのようにすれば可能でしょうか。。

794 名前:デフォルトの名無しさん [2021/03/02(火) 13:28:23.53 ID:xn7W4wyt0.net]
丸投げか?
まずは自分で作ってみろよ

795 名前:デフォルトの名無しさん mailto:sage [2021/03/02(火) 13:38:46.86 ID:Myd7KGhQ0.net]
先生が添削してくれるみたいです

796 名前:デフォルトの名無しさん mailto:sage [2021/03/02(火) 15:10:40.09 ID:S4zyTxBwM.net]
A1セルに書かれたファイル名を読み取る
そのファイル名を開く
B1セルから書き込む

を繰り返せばいいと思います

797 名前:デフォルトの名無しさん mailto:sage [2021/03/02(火) 17:47:07.08 ID:stzBjdlCH.net]
いつもの人

798 名前:デフォルトの名無しさん mailto:sage [2021/03/02(火) 19:42:52.19 ID:h1fr2K930.net]
>>791
どうでもいいがB1〜B7へは入力じゃなくて出力って言った方がいい

799 名前:デフォルトの名無しさん mailto:sage [2021/03/02(火) 23:19:45.83 ID:yDNF8xvg0.net]
>>791
マクロの自動記録

800 名前:720 mailto:sage [2021/03/03(水) 02:30:35.83 ID:hWQCqBl50.net]
>>720ですが、解決というか悪化したので一から作り直すことにしました。

原因と思われていたフォームモジュールを解放しても常時コンパイルエラーが発生するようになりました。
思い切って順に全て解放しながらコンパイルしてみたところシートを含めた全てのモジュールを
削除して新規シート一枚の状態でも発生する始末です。

>>733
試してみたところ、使用できない文字を使った時と同じ「不正なオブジェクト名」だと怒られます。
(もし重複なら「既に〜使われています」)
コンパイルエラーの原因にある「ユーザー定義型」というのはフォームのモジュール名の事だったのかも・・・
ちなみに原因らしいフォームのモジュール名を変えても同様のコンパイルエラーは発生し、
その新しいモジュール名でも同じ症状が出るようになります。

>>732
>>何をもってライブラリと言ってるのかは分からん

すみません。参照設定にあるCOMコンポーネントの事です。
APIはSleepしか読み込んでおらず、
コントロールもリストボックスとコマンドボタンとオプションボタンのみです。

元の環境で実行も出来ませんでしたが、
テストで色んなモジュールの解放してインポート、モジュール名変更して戻すを繰り返していると、
プロジェクトのコンパイルは同じエラーがでるが、(環境問わず)実行は可能という状態になりました。
コンパイルのテストしかしていなかったのでどのタイミングで実行可能になったのかは分かりませんが、
引き続き調べてみます。

801 名前:720 mailto:sage [2021/03/03(水) 02:46:34.41 ID:hWQCqBl50.net]
>>733
レスに追加です
名前の変更では「不正なオブジェクト名」と出ますが、その名前でのインポートは成功します。
インポート出来れば自由にフォーム名を変更したり戻したりできました。

>>735
見てみましたが、特に変わりはないようです。

>>738
フォームモジュール以外を全部移したところコンパイルが通りました。
同じフォームを作って再発すると怖いので、
フォームに有ったコントロールはシート上に再現して、とりあえずこれで運用してみることにしました。

802 名前:デフォルトの名無しさん mailto:sage [2021/03/03(水) 21:19:07.61 ID:CdcHt2GZ0.net]
シートの中身を初期化しようと、範囲選択してClearcontentしたら処理が滅茶苦茶重くて
他のどの処理よりも一番重いまであります
セルの中身をクリアして真っ新にしたいんですが、軽くなる方法とか削除するのに他のいい方法は何かありますか?



803 名前:デフォルトの名無しさん mailto:sage [2021/03/03(水) 22:01:26.45 ID:x1QDDRPj0.net]
画面更新切ってないとか

804 名前:デフォルトの名無しさん mailto:sage [2021/03/03(水) 22:53:36.00 ID:cY/9Er0+0.net]
場合によってはシートごと削除&同じ名前のシート作成orテンプレで用意していたシートをコピー

805 名前:デフォルトの名無しさん [2021/03/03(水) 23:58:49.06 ID:zTCiutcbd.net]
>>800
Clearcontentsじゃなくて単に「削除」に時間が掛かってるだけ説。
どうしようもないExcelのバグ、俺もこの前株シミュレーター作ってて直面した。
たかだが3万行×1列消すのに10分掛かる糞仕様。
どういうわけかD列とE列に入っているがD列を消してからだとE列が、E列を消してからだとD列がそうなる。
2007と2013入れてたがどちらでも同じ結果。スプレッドシートでならサクっと消せた。

806 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 00:37:39.40 ID:0V1y42950.net]
質問させてください
業務用PCのためDsoFramerのインストールを容易には出来ない環境で、ユーザーフォームにワークシートを表示するシステムを作成するのは厳しいでしょうか

807 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 02:10:45.74 ID:EcELbNCH0.net]
レスありがとうございます
画面更新は勿論切ってます
ただ初期化したいだけなのにアホみたいに時間が掛かるので、同じ使用のシートを作る処理にする事も検討します

808 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 06:47:21.46 ID:yRtnuXOv0.net]
変数に入れてから消すとか、同じ選択範囲の配列(空白)ぶっこんでみてもだめかな

809 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 10:44:48.81 ID:B7/1q6yvH.net]
一気に何万行も消さずに100行ずつとか小分けしたら軽くなったりしないのかな

810 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 10:49:05.92 ID:1zCrSMV60.net]
ClearContentsで重かったことなんてないなあ。
めんどくさくてVBAじゃなくマクロで作って選択範囲小分けのまま放置してるからかな?

811 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 11:15:36.75 ID:fKYNPqjU0.net]
>>800
ふーん
範囲指定して消したらどう?
後、最近のEXCELはひょっとして
セルの内容が変わったら
再計算しているかも知れないから
一応自動計算も切ってみたら?

セル値が変わった時のイベント拾って
何かやってるとかいうオチだったら
問題外だけど

812 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 11:36:50.11 ID:EtHhkpeQ0.net]
スレが見つからなかったのでこちらで失礼します
C8の値が$100にならない理由を教えて下さい
https://i.imgur.com/XLERVNc.png



813 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 11:53:16.96 ID:w9aQykj0M.net]
関数変わっちゃうけど代案を出すなら
VLOOKUP(B8,B1:C5,2,FALSE)
とかどう?

814 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 12:01:03.02 ID:1zCrSMV60.net]
なんだこりゃ
LookUpって欠陥あるんかね

815 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 12:21:33.50 ID:w9aQykj0M.net]
LOOKUPって近似値を検索する関数だから文字列探そうとすると上手くいかない事が多かった気がする
だから面倒臭くなってVLOOKUP,HLOOKUPを使うように癖をつけた記憶がある

816 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 13:49:43.11 ID:1PJYOy7Jr.net]
これ思い出したわ

https://i.imgur.com/x2uWdkO.jpg
https://i.imgur.com/fnrEWzZ.jpg

817 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 13:50:26.95 ID:FInty+sk0.net]
新規作成してから試してみたけど$100になったな

818 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 14:14:53.10 ID:Kq0/JwOuM.net]
>>810
C8 が "もり " みたいに空白入ってるとかじゃね?

819 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 14:47:21.95 ID:skJUg0gJ0.net]
検査範囲の値は昇順にしてください
そうでなければ正しい値はえられません
並んでないときはVLOOKUPやHLOOKUPを使ってください

という旨のことをヘルプに書いてある。

820 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 16:50:41.38 ID:b7V1SruDM.net]
LookupにもVLookupやHLookupみたいに検索方法のオプションあればいいのにね
まあMSとしてはExcel最新版にしてXLookup使ってねって言うことなんだろうな

821 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 18:46:57.78 ID:EcELbNCH0.net]
初期化で若干重たいのは取り敢えず諦めることにして、外部のCSVをクエリテーブルで読み込んでから
Refleshでシートに書き込んでるのですが、この書き込む前の段階で、クエリテーブル上で不要な列のデータを削除する事って可能でしょうか?
不要なデータが大量に混ざっているので、全部まとめてシートに書き込むとやはり重たいので軽量化したいのですが……

822 名前:デフォルトの名無しさん [2021/03/04(木) 19:49:49.80 ID:V/SEJayw0.net]
いつものあいつだな



823 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 20:49:35.42 ID:yRtnuXOv0.net]
lookup系よりindexmatch使うことが多いな

824 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 20:55:32.61 ID:INwEijJcM.net]
lindexmatch使いアピールしてはじめて自称excel上級者として一人前

825 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 21:28:29.09 ID:Cjl2zDCE0.net]
昔はユーザー定義関数作ったけど、今はXLOOKUPがある。

826 名前:デフォルトの名無しさん mailto:sage [2021/03/04(木) 22:18:19.39 ID:1zCrSMV60.net]
IindexMatchなんぞ使わず、
列をボーンとコピー挿入してVLOOKしてこそ一人前

827 名前:デフォルトの名無しさん mailto:sage [2021/03/05(金) 05:33:04.89 ID:eGeMRqFI0.net]
いつものあいつて何?

828 名前:デフォルトの名無しさん mailto:sage [2021/03/05(金) 09:21:20.59 ID:n//DPju00.net]
とうしつの自己紹介

829 名前:デフォルトの名無しさん mailto:sage [2021/03/05(金) 21:02:22.60 ID:s30llsqJ0.net]
臭う質問者の総称

830 名前:デフォルトの名無しさん mailto:sage [2021/03/06(土) 12:22:29.01 ID:yJvSdslEH.net]
実際に使ってないような質問をして答えさせて悦に入る人

831 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 10:26:06.26 ID:FD1rrusm0.net]
webページからデータをとってきてセルに格納するマクロを書いています
msxml2.xmlhttpというのを使うとページの内容をgetすることができるのですが、これはどうやらieを利用しているようです
ieはいつなくなるかわからないので他の方法があれば今のうちから変えておきたいのですが、vbaで使える方法で他にどういうのがあるか教えてください

832 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 10:30:32.44 ID:ZX3XyXetM.net]
IEはなくなるのにVBAは大丈夫だと思う理由は?
言語もPythonとかにしてBeautifulSoupやSeleniumでも使った方がよい



833 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 10:37:32.50 ID:4ExLqYxe0.net]
パワークエリはどうかな

834 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 10:42:14.29 ID:TW4NSoKtM.net]
無くなったときのビジネスインパクトはIEよりもVBAの方が遥かに小さいから、MSがどっちか先に切るとしたらVBAだろう
最悪VBAは切られてもExcelのバージョンを塩漬けにして運用できなくはないしな

835 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 11:28:15.07 ID:zpOLYdVD0.net]
>>830
まあそのうちpythonに移行するんでしょうけど、今は慣れない言語を一から勉強してる暇はないので
それで、あなたはvbaでやる他の方法を示せないということでよろしいですか?

>>831
どうかな、じゃなくてどうやるのか教えてください

836 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 13:02:06.24 ID:JbGOdXToM.net]
704 名無し~3.EXE sage 2021/03/01(月) 20:11:45.17 ID:hZCKpI4x
デスクトップ版のVBAマクロに替えてWeb版はOfficeスクリプトがプレビュー中(現在は法人向け365のオンラインのみ)
https://docs.microsoft.com/ja-jp/office/dev/scripts/resources/vba-differences

705 名無し~3.EXE sage 2021/03/01(月) 20:16:10.79 ID:hZCKpI4x
Excelの新自動化ソリューション「Office Scripts」プレビュー版が登場
https://ascii.jp/elem/000/004/000/4000725/

Excel操作をJavaScriptで記録 〜Microsoft、“Office Scripts”をパブリックプレビュー
https://forest.watch.impress.co.jp/docs/news/1227931.html

837 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 13:04:56.15 ID:JbGOdXToM.net]
788 名無し~3.EXE sage 2021/03/03(水) 18:26:40.20 ID:5NVXQTtc
Excel関数ベースのプログラミング言語「Microsoft Power Fx」登場 オープンソースで公開予定
https://www.itmedia.co.jp/news/articles/2103/03/news080.html

Microsoft、自社製RPAツールを全Windows 10ユーザーに無償提供 マウスクリックやキーボード入力をGUIで自動化
https://www.itmedia.co.jp/news/articles/2103/03/news096.html

838 名前:デフォルトの名無しさん [2021/03/07(日) 13:46:03.75 ID:5FBwssoR0.net]
>>833
なんだただの馬鹿か
煽って聞きだそうとしてもこのスレはいつものあいつで耐性ができた人ばかりだから無理

839 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 14:06:40.31 ID:4ExLqYxe0.net]
触れないようにしてたけど辛辣で草

840 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 17:25:15.30 ID:CYFzWFvV0.net]
>>836
答えられないならレスしなくていいよ
無能に用はないから

841 名前:デフォルトの名無しさん [2021/03/07(日) 17:51:15.16 ID:5FBwssoR0.net]
>>838
悔し買ったか?馬鹿

842 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 18:27:16.06 ID:REgzkSN70.net]
な、age厨だろ?



843 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 20:22:49.89 ID:l5mf+U2f0.net]
反論できなくてアゲサゲ言い出す奴は見苦しい

844 名前:デフォルトの名無しさん mailto:sage [2021/03/07(日) 21:30:58.30 ID:iHuYVCVV0.net]
言われて下げてやんのwww

845 名前:デフォルトの名無しさん [2021/03/07(日) 22:58:33.05 ID:5FBwssoR0.net]
馬鹿は自分が相手にしてるのはただ一人だけと思い込む

846 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 05:43:53.99 ID:bSh0ioyn0.net]
な、age厨だろ?

847 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 07:03:19.05 ID:+AeHqC2j0.net]
自己紹介www

848 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 09:05:36.54 ID:+ItxpBbz0.net]
類友

849 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 09:36:00.68 ID:gk28PyLU0.net]
もはや論点なにそれ状態

850 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 10:52:47.61 ID:TrYviUKj0.net]
保存して閉じる処理をしても、ファイルは閉じてもExcelはとじません

Private Sub Workbook_BeforeClose(Cancel As Boolean)
'処理
Application.DisplayAlerts = False
Application.Quit
ThisWorkbook.Close savechanges:=True
Application.DisplayAlerts = True
End Sub
これでもダメでした
Application.Quit
ThisWorkbook.Close savechanges:=True

851 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 11:07:15.73 ID:9xs5g46P0.net]
ActiveWindow.Close

852 名前:848 mailto:sage [2021/03/08(月) 11:38:58.50 ID:TrYviUKj0.net]
>>849

Application.Quit
ThisWorkbook.Close savechanges:=True
ActiveWindow.Close
これもダメでした



853 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 11:53:11.92 ID:9xs5g46P0.net]
Application.Quit
Application.DisplayAlerts = False
ThisWorkbook.Close savechanges:=True
Application.DisplayAlerts = True

854 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 11:57:13.64 ID:vFSNvomr0.net]
Application.DisplayAlerts = False
If Workbooks.Count = 1 Then
Application.Quit
Else
ThisWorkbook.Close
Application.DisplayAlerts = True
End If

とかどう?

855 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 11:59:04.12 ID:ub+dBY/l0.net]
>>848
何でセーブする前にEXCELのアプリケーション閉じようとしてるの?

856 名前:848 mailto:sage [2021/03/08(月) 12:04:00.24 ID:TrYviUKj0.net]
>>851
>>852

ダメでした。
ほかのファイルでは問題なくExcelが終了するのですが
Private Sub Workbook_BeforeClose(Cancel As Boolean)
を使うマクロのときだけ、閉じなくなるような気がします。関係ありますかね?

857 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 12:23:48.80 ID:Qtlmv4rK0.net]
>>853

858 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 12:30:21.22 ID:ub+dBY/l0.net]
わざわざセーブメッセージ叩き潰して
ブック捕まえたまんまにして
アプリケーション閉じようとしてるんだから
わざと閉じられないようにしているようにしか見えない

859 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 12:44:18.76 ID:Qtlmv4rK0.net]
savechangesでも無限ループしてそう

860 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 12:56:18.62 ID:vFSNvomr0.net]
>>854
BeforeCloseにApplication.Quit記述してイミディエイトからThisWorkbook.Closeを実行してみたけど問題なく閉じたから何か別の物が干渉してる可能性があるかなぁ

861 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 13:04:41.43 ID:9xs5g46P0.net]
めっちゃ古いバージョンとかじゃないだろうな

862 名前:848 mailto:sage [2021/03/08(月) 13:32:58.59 ID:TrYviUKj0.net]
>>855
当初はこれでしたが、ググったら、Application.Quitを上に書くらしいです

ThisWorkbook.Close savechanges:=True
Application.Quit

>>856
Application.Quit
ThisWorkbook.Close savechanges:=True
だけでも同じでした

>>857
他に保存する方法を教えてください

>>858
自分でも試してみましたが、確かにちゃんと閉じますね。他の干渉を疑ってみます。

>>859
2019です



863 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 13:49:36.30 ID:9xs5g46P0.net]
Application.EnableEvents = true
を頭に付けてみるとか

864 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 18:00:51.59 ID:+0kCYoNG0.net]
そこでやるべきことは ThisWorkbook.Save だけだと思うんだが

865 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 18:30:55.70 ID:bSh0ioyn0.net]
コマンドプロンプトでtaskkill /f /im excel.exe

866 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 19:53:15.72 ID:Awv++sSE0.net]
Quitは最後では
変なExcelプロセスが残ってないか確認した方がいいのでは

867 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 21:03:57.98 ID:53ng3r6C0.net]
VBEでVBAを使って出来たものがマクロであってる?
本屋にVBAの本とマクロの本があるけど同じことと思っておk?

868 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 21:12:54.65 ID:ub+dBY/l0.net]
>>865
半分正解

869 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 21:17:42.97 ID:ub+dBY/l0.net]
「VBEで作ったものはマクロ」
これは合ってる
「VBAとマクロは同じことを言っている」
マクロにはVBAtで作られたもの以外に
4.0マクロと言うものが有ってだな・・・
まぁ、あまり気にしなくても良いかもしんないけど

870 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 21:34:20.02 ID:B96zl28N0.net]
マクロ
スクリプト
関数
これらはプログラムのひとかたまり
厳密に区別しずらいけどそれぞれ
ニュアンスの違いはある

871 名前:デフォルトの名無しさん [2021/03/08(月) 21:58:36.85 ID:U/cFdqiVM.net]
>>865
VBEはエディタ。Excelの場合はVBAとマクロは同じ意味で使われる。ExcelマクロがExcel VBAのコードで表現されるため。

872 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 22:10:13.99 ID:Awv++sSE0.net]
>>867
なんかいろいろ違うぞ



873 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 22:16:46.29 ID:Dj6nESKZ0.net]
関数は全然違うだろwww

874 名前:デフォルトの名無しさん mailto:sage [2021/03/08(月) 22:42:26.89 ID:53ng3r6C0.net]
>>866
まだ表紙なのに理解半分かw

>>867
4.0マクロネットで見て使ったこと1回だけあるけど関数みたいなやつだった記憶。

>>868
スクリプトも便利そうですよね。
デスクトップかっこ良くするフリーソフトに自由にスクリプト使えますって書いてあって挫折した。。

>>869
出来たもんがマクロでVBAが設計図でVBEが紙と鉛筆か。

みんなありがと、ネットにも解説サイトあるけど違うとこ見ちゃうから本買ってくるわ。ノシ






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<254KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef