Excel VBA 質問スレ Part75at TECH
Excel VBA 質問スレ Part75 - 暇つぶし2ch913:デフォルトの名無しさん
22/04/20 07:47:48.41 uFaPvbC9M.net
>>896
四捨五入した値をdouble型に代入した際にもこの誤差が発生する場合もあったのですがその場合の対処はDoWhileで数値が丸められるまで四捨五入を繰り返す処理を噛ませれば良いですか?
それよりcurrency型に代入した方が処理を省略できるのではないでしょうか
担当者の癖や上位工程担当者の癖、物件の種類などを加味して分析して完了予測を出すためツール全体で2万弱のステップ数があり、可能な限り処理を早めたいです
まぁそんなの誤差の範囲じゃんとかもっと別に短縮出来る所あるだろって言われたらそれはそうってなるんですが
工数は小数点第一位までの入力です

914:デフォルトの名無しさん
22/04/20 08:21:13.14 lCHITGXH0.net
>>898
10進数の0.1は2進数だと循環小数になるんだわ
Doubleは単に桁数が増えるだけで誤差がなくなるわけじゃないから、たぶん根本的に理解が間違ってる

915:デフォルトの名無しさん
22/04/20 11:58:28.08 TUC465n/0.net
>>898
そもそも何が問題かわかってる?
コンピュータ(VBA)の割り算では例えば0.999999とかになる問題は常にあることと、有効桁数を常に頭に入れてロジックを組む必要がある
割り算した結果の少数点同士の足し算もできるだけ避ける
小数点以下は一桁と決まってるなら最初から10倍しといて見せる時だけ小数点を付ける
最終的に割り算したら四捨五入する
などなど当たり前のことをわかってないから数値が合わないように見える
こんなの基本だが

916:デフォルトの名無しさん
22/04/20 12:03:05.91 TUC465n/0.net
それと、変数や定数、埋め込み数値の型に気を付け、違う型同士の演算ではどういう結果になるかも言語の仕様を常に調べるのは当たり前のこと

917:デフォルトの名無しさん (ワッチョイ ff63-0fbr)
22/04/20 12:14:09 AAz4B5BA0.net
>>901
なるほど!さすが


918:物知りですね! でもここは質問スレだからもう少し人には優しくしてくださいね



919:デフォルトの名無しさん
22/04/20 12:39:04.97 dxBIrhD/0.net
プログラムの本質からは外れるけど、現場の工場要員を秒刻みで拘束することに繋がるのを
把握しておくべき 上の方の役員からの指示でのシステム構築なのか、現場の意見を汲んだ
システム化なのかでも変わってくるかも知らんが、古来そういうのは運用し出してから破綻する
相手がロボットならまだしも、自分だって作業を秒刻みで拘束されたら嫌気さすだろうに
システム構築する側の自己満足に過ぎないような無駄なヶ所に注力したところで給料泥棒化するだけ
実際には不良(材料不良・加工不良・落下などの破損・etc)が出たり加工機械の不具合で作業がSTOPしたり
余った時間をバッファに充てるだけじゃ無くて、敢えて余裕をもたせたプランニングを意識しないと
全社員から反発くらって、せっかくの仕事が無かったことにされる 黒歴史の予感しかしない
ロボットやオートメーション機器のためのプログラムだとしたらVBAは間違ってると思うし

920:デフォルトの名無しさん (ワッチョイ 5701-5h/q)
22/04/20 13:55:16 wuSnjbzX0.net
>>900
浮動小数点数は特定の桁数の2進数で表現できる数字に丸める表現方法で、10進数の有効桁数は関係ないんじゃ?
そもそも「有効桁数を頭に入れて〜」みたいな正確さを考えて使う型じゃなくて、曖昧で良い場合に使う。

小数同士の演算は(オーバーフローを無視すれば)固定小数点数で問題なく行えるから避ける必要ない。

921:デフォルトの名無しさん
22/04/20 13:58:17.02 nqlym3kL0.net
基本は大事だから
何度でも繰り返しておくんなまし。

922:デフォルトの名無しさん
22/04/20 14:12:37.06 2WayYnGs0.net
質問ですが、
VBAからwebページのデータを取得するとき、
CreateObject("InternetExplorer.Application")とかってやりますが、
サポート終了後はどうなりますか?
Edgeでできる?

923:デフォルトの名無しさん
22/04/20 14:45:20.55 W96CmtFuM.net
>>906
Selenium Webdriver

924:デフォルトの名無しさん (ワッチョイ 5701-5h/q)
22/04/20 15:54:04 wuSnjbzX0.net
>>906
当分サポート終了はないけど、そうなったらできなくなる。
Edgeじゃできないから代替案を考える必要がある。

有名なのはSelenium、Chrome DevTool Protocol

前者はライブラリ(参照設定する奴)を利用者全員にインストールしてもらい、
更にブラウザとのバージョン互換性にも対応する必要がある
ただし動作環境はエクセルのみっていうVBA最大のメリットを失う

後者は単独で動作するモジュールが作られてる

VBA以外の言語の開発環境があるなら、
スクレイピング部分はそれで作成してVBAから呼び出すって方法もある。
自分はそうしてるよ

925:デフォルトの名無しさん (ワッチョイ 5701-5h/q)
22/04/20 15:57:01 wuSnjbzX0.net
edgeじゃできない、は
CreateObject("InternetExplorer.Application") を使ってedgeを操作できないって意味ね
だからseleniumとかでedgeを操作することになる

926:デフォルトの名無しさん
22/04/20 16:15:46.15 TUC465n/0.net
>>904
わからないなら黙っていればいいのに

927:デフォルトの名無しさん
22/04/20 16:20:42.29 oDE2bDUYM.net
固定小数点は格納するたびに四捨五入するようなもんだから誤差の蓄積は多いが
人間社会ではコレをヨシ!としているから問題ない
天文学的な計算では命中しないだろう

928:デフォルトの名無しさん
22/04/20 16:26:01.75 2WayYnGs0.net
>>907
ありがとう。

929:デフォルトの名無しさん (ワッチョイ b72f-mbkD)
22/04/20 17:45:44 DAsyvBxD0.net
>>911
>固定小数点は格納するたびに四捨五入するようなもん
もってる精度の桁数を超えない限りそんなことはないわ
想定する桁数内で誤差がでないから固定小数点使うんだぞ
逆に一般的なプログラム言語の浮動小数点は小数以下桁数が浮動する癖に0.1が正確じゃなかったりするから問題なんだよ

930:デフォルトの名無しさん
22/04/20 19:09:32.27 cVTwugEg0.net
0.1は0.1だよ

931:デフォルトの名無しさん
22/04/20 19:25:53.48 FB1fQipzM.net
0.1E+15
桁数は10の15乗の1京
有効数字は1桁の0.1
値は1000兆でも数値は0.1

932:デフォルトの名無しさん
22/04/20 19:43:46.55 lF2OJV8Ed.net
Trunc関数で不要な桁をバッサリ逝けば良いんじゃない?

933:デフォルトの名無しさん
22/04/20 20:09:02.82 2WayYnGs0.net
>>908
ありがとうございます。
iMacrosってのを試してました。
Selenium、Chrome DevTool Protocolを調べてみます。
Excelで入力ダイアログボックスを出して、入力した番号に応じて、そのページのデータを取りに行く、
ってことがやりたいです。
言語はなんでもいいですね。
できれば、Visual Studioを使いたいですが…w

934:デフォルトの名無しさん
22/04/20 20:56:24.65 by8HP/iQ0.net
なんだIEEE754仕様問題の話題か。
10進と16進(2進)の浮動小数差異が出るのはまぁある意味仕方がない。
固定小数点の型を持つ言語を使うか、割る前に何桁か分10のべき乗数を掛けて割った後に同じだけ割ってやって適当なところで諦めるか、というところが落としどころだろうね。
ちなみにEXCELの数式の四捨五入は本当に四捨五入だけど、VBAの四捨五入は銀行丸めだから気をつけてね。

935:デフォルトの名無しさん
22/04/20 21:03:02.83 lF2OJV8Ed.net
因みにパワクエも銀行丸め
いい加減統一して欲しいわ

936:デフォルトの名無しさん
22/04/20 21:09:55.19 Q+UfmON+0.net
四捨五入はRound使わなくてもできるらしいで
知らんけど

937:デフォルトの名無しさん
22/04/20 21:17:52.87 Me5L26li0.net
>>906
おれも心配してたけどオートメーションの場合は6月以降も使えるらしいな

938:デフォルトの名無しさん
22/04/20 22:25:36.74 DAsyvBxD0.net
>>918
暗黙の変換(丸め)を四捨五入というのは問題があるかと

939:デフォルトの名無しさん
22/04/20 23:37:18.06 by8HP/iQ0.net
>>922
何故に暗黙の変換限定の話と思ったのかは分からないけど、型はなるべく明示的に変換しないとね。
その辺、VBAはOption Strict Onが使えないから大変。
もっとも、.Netでも匿名型を使うメソッドは固めてOption Strict Offに設定したモジュールに突っ込んでおく必要があるけど。

940:デフォルトの名無しさん (ワッチョイ b72f-mbkD)
22/04/21 17:21:20 pjiVvgnX0.net
ああ、そうだな。Cxxxで明示的に型変換しても銀行丸めだから
暗黙の変換に限った話ではなかったな

匿名型のくだりは何を言ってるか意味不明だがな
匿名型は名前がついてないだけで厳密に型指定されているんだが

941:デフォルトの名無しさん
22/04/21 23:11:20.77 VWW2tbiZ0.net
CcxxとかじゃなくてもRound使ったって普通に銀行丸のだろ

942:デフォルトの名無しさん
22/04/22 02:09:40.61 M5fmJ0ze0.net
ワークシート関数のROUNDは四捨五入
VBAのRound関数は銀行丸め
VB.netのMath.Roundメソッドも銀行丸め
これ真面目な話テストに出るし実務でもトラブルの元だからちゃんと覚えて使い分けろよ

943:デフォルトの名無しさん
22/04/22 08:50:16.15 Uci4ALKRM.net
そもそも四捨五入や銀行丸めは暗黙の(型)変換でも何でもないけどな

944:デフォルトの名無しさん
22/04/22 12:17:14.78 6grDaRhxp.net
VBAの四捨五入は型変換でやるもんだと思ってるんだろ

945:デフォルトの名無しさん
22/04/22 12:26:05.45 Sb+Ase1ga.net
VBAで全ての物事を解決したいと考えています。
まずはOCRからやっていきたいです。
次に、人工知能とビッグデータに関する VBA のライブラリを充実させたいです。
それができたら、VBA で、callbyName を使って、疑似マルチスレッド化してサーバーOSを作り、
メタバースを作りたいです。
どうしたらいいですか?

946:デフォルトの名無しさん
22/04/22 12:56:56.20 JqjwtZFMr.net
沢山金がある
→MSに依頼する
少しだけ金がある
→スクールにでも通う
金が無い
→自力で調べろ

947:デフォルトの名無しさん
22/04/22 13:46:25.69 qHWul8Ex0.net
>>929
もう休み始まったのか羨ましいな

948:デフォルトの名無しさん
22/04/23 07:32:43.48 Q/JWtTUi0.net
VBAのコードをパスワードではなく
AccessのようにMDEまたはACCDE化して隠蔽できないのかね?

949:デフォルトの名無しさん
22/04/23 13:58:03.66 yVxZarCbp.net
あったとして、ワークシートが見れない

950:デフォルトの名無しさん
22/04/23 21:14:41.84 QWCWIiV00.net
VB6.0の質問となります。
ご存じのかた、ご教授お願い致します。
CommandButton1のDownPictureプロパティ(ボタンを押すと指定したピクチャが表示される)
で設定するピクチャファイルをボタンを押すたびにランダムのピクチャを
表示する方法はありますでしょうか?
ピクチャを固定でなく、可変でいろいろなピクチャを表示することはできるのでしょうか?
宜しくお願い致します。

951:デフォルトの名無しさん
22/04/23 21:26:02.35 Owv7WUis0.net
>>934
可能だけどスレチ
VBとVBAは似てるけどまったく違う言語なのよ
VB専門のスレで聞くか、できるという情報を手がかりにぐぐって

952:934 (ワッチョイ 2590-WvSx)
22/04/23 21:56:53 QWCWIiV00.net
>>935
ありがとうございます。
VBスレで聞いてみます。

953:デフォルトの名無しさん
22/04/24 03:02:47.88 dQQkhpXr0.net
なんで.netじゃなくてVB6.0?

954:デフォルトの名無しさん (ワッチョイ a868-g9NX)
22/04/24 07:12:27 V025dUWC0.net
聞いてやるな

955:デフォルトの名無しさん
22/04/24 08:27:40.38 rcB2xidb0.net
保守案件じゃねーの?
それより
> VBとVBAは似てるけどまったく違う言語なのよ
のほうが気になるわ

956:デフォルトの名無しさん
22/04/24 08:33:51.29 V025dUWC0.net
VB6とVBAは割りと似てるよ
.netは別物だけど

957:デフォルトの名無しさん
22/04/24 09:47:15.58 K6J8xSzg0.net
VB.NetとVBAが違うと言いたかったんじゃないか?
VBAとVB6.0なんてガワ以外大して変わらんだろ

958:デフォルトの名無しさん
22/04/24 11:05:42.56 JjYc30D0a.net
それなら全くスレチって言うわけでもないだろうしVB6以前スレに誘導してもあっちは過疎ってるから>>935の真意がわからん
古代VBプログラマ質問スレ(Ver.6.0 まで) part65 [転載禁止]c2ch.net
スレリンク(tech板)

959:デフォルトの名無しさん
22/04/24 11:34:19.84 3PCmdv6z0.net
>>934
配列かコレクションに取りうる画像ファイルのパス全部突っ込んどいて
毎回Rnd関数でランダム添え字作成してDownPictureへ代入する処理を
Timerイベントで定期的に起こせばいいんじゃね

960:デフォルトの名無しさん
22/04/24 12:34:51.24 /i/HSWcF0.net
>934の方法で出来るね
vb.netはCommandButtonというコントロールがないからButtonコントロールで処理することになるけど

961:934
22/04/24 14:05:21.06 sOMp0pcl0.net
>>943
教えていただき、ありがとうございます!
この方法でできました!
助かりました!
>>944
.netは方法が違うんですね。
ありがとうございます。

962:デフォルトの名無しさん
22/04/24 14:18:48.53 H35nhyzua.net
VBAに聞けば、VB6.0の問題が解決すると思ってる魂胆がむかつく

963:デフォルトの名無しさん
22/04/24 14:19:17.64 H35nhyzua.net
次の質問どーぞー!

964:デフォルトの名無しさん
22/04/24 14:49:27.80 SWKX3wPR0.net
>>933
なんでだよ Accessだってオブジェクトはそのまんまだぞ Codeを隠すってだけだ
まあ、Excelでそんなことしたら阿鼻叫喚の地獄絵図がそこら中で起きるだけだろうが

965:デフォルトの名無しさん
22/04/24 15:00:54.37 awQxKQ/u0.net
>>945
結局、こういう馬鹿は馬鹿だからこんな書き込みをすることになるんだよな

966:デフォルトの名無しさん (ワッチョイ a868-g9NX)
22/04/24 19:19:11 V025dUWC0.net
>>949
そうそう、まさに>>949みたいな感じで

967:デフォルトの名無しさん
22/04/24 20:32:26.94 4thwl0KN0.net
VBAのコードを隠すとかw
いやらしいコードとか胸アツ

968:デフォルトの名無しさん
22/04/24 21:56:52.40 HnHBh+4U0.net
ソースを見たらBase64が書き込まれてるとかかw

969:デフォルトの名無しさん
22/04/24 22:10:43.02 qlayZYg40.net
変数や関数名を1文字にして、インデントをなくし、マルチステートメントを使い、GoToで飛ばしまくる
これぐらいやっとけばニワカには暗号化されてるのと同じに見えるよ
組み込み関数に型文字を付けたり、行番号とか書いとけばさらに混乱するんじゃない?

970:デフォルトの名無しさん
22/04/24 22:11:47.35 qlayZYg40.net
代入のLetを省略せずに書くとか

971:デフォルトの名無しさん
22/04/24 22:21:56.70 qlayZYg40.net
例えばこういうのは初心者だとVBAのコードだと認識できない
Option Explicit
Sub a()
10 Dim i%, s$: For i% = 0# To 15 Step 1&: Let s$ = Hex$(i%): Debug.Print s$,
20 Next i%: GoTo Next_i: Let i% = 999#
30 Next_i: Debug.Print
End Sub

972:デフォルトの名無しさん
22/04/25 16:32:49.44 mIKR8D/k0.net
もっと初心者だとこういうもんだと覚えて、ウルトラコード量産して
逆にそれがウケてそこら中から引っ張りだこに成る可能性も

973:デフォルトの名無しさん
22/04/25 18:25:34.65 d4FCGwAUa.net
あとどこからも呼ばれないコードを周囲に書いとくとか

974:デフォルトの名無しさん
22/04/25 22:42:22.33 LL5g/Itw0.net
難読化してくれるサイトもあるようだがAIでも駆使してんのかよ

975:デフォルトの名無しさん
22/04/26 13:34:27.36 h7wIW8Sj0.net
VBを学んでみたいのだけど、専用アプリをインストールすれば良いのですか?

976:デフォルトの名無しさん
22/04/26 13:39:28.14 4e+J3DaO0.net
それを聞くようでは勉強進まないと思うぞ
VBAなら、Excelのオプションから設定しよう

977:デフォルトの名無しさん
22/04/26 13:41:38.59 h7wIW8Sj0.net
はい!分かりました先輩!

978:デフォルトの名無しさん
22/04/27 11:18:39.59 13VCBUUL0.net
VBとVBAは違うだろ

979:デフォルトの名無しさん
22/04/27 11:35:58.26 5AfXZQ180.net
めんどくさくなりそうだからその話題はいいわ

980:デフォルトの名無しさん
22/04/27 12:17:37.70 0nl7nS5l0.net
ヤフーの質問サイトをたまに見ていると、VB板なのにExcel VBAの質問している方が多いですからね。

981:デフォルトの名無しさん
22/04/27 14:37:20.10 VQIBBePJ0.net
これはマイクロソフトが悪い

982:デフォルトの名無しさん
22/04/28 02:09:14.27 ba7q24a/0.net
質問と言うわけじゃないんだけど、最近VBAのお仕事が立て込んでて、こねくり回していたら変な現象が起きたのでちょっと報告。
セルのフォーマットを変えても値がそのフォーマットに合わせて変更されず、セルの中身を触ろうとして初めて設定したフォーマットが反映されることがある。
個人的に勝手に「ガラスのフォーマット」と呼んでいるけど、これをVBA上でフォーマットを反映させたいと思い、Cell(1,1).value = Cell(1.1).valueみたいにすれば行けるかなと思ってやってみたら行けたので、
範囲でも行けるかなと思ってRange(“A:A”).value = Range(“A:A”).valueとしてみたら行けた。
調子にのって複数のセル範囲を一度にしてみたら、VBA側ではエラーはなくセルの内容がまばらに#N/Aとなった。
それも何かしら値が設定されていたセルもそうでないセルも関係なくまばらに#N/A。
複数範囲、例えば”A:A,B:B”みたいなのをSplitで「,」で分割してひと範囲づつ行ったら起きなくなった。
まだ詳しくは調べていないし、ヘルプも見ていないけどEXCELのバグと考えるのは早計かな?

983:デフォルトの名無しさん
22/04/28 06:30:27.37 4LxgxN/hd.net
ストゼロのコピペみたいになってるので先ずはExcelの異常より自分の異常を気にした方が良い
お大事に

984:デフォルトの名無しさん
22/04/28 06:56:19.59 Xx5H6lJB0.net
>>966
重い

985:デフォルトの名無しさん
22/04/28 07:13:52.33 Nya/6dWlM.net
うーんこの

986:デフォルトの名無しさん
22/04/28 08:23:08.41 tFS3Ff7A0.net
同一sheet、複数areaの仕様通り

987:デフォルトの名無しさん
22/04/28 10:11:30.42 w1n3DLDr0.net
新人の頃、なんでもやたらバグ!と言い募ってたら、ここの諸先輩にブン殴られた
何でもかでもぜんぶ他者のせいにしてると、モニタから腕が伸びてきてホントにブン殴られる
多分、立て込んでるがキーワード 立て込んでるなら尚更マシン複数台用意して
作業を分散して負荷を軽減するなり、都度都度保存してExcelも終了させておいて
合間にエロ動画見たりしながらExcelさんを休ませてあげないと、テンポる

988:デフォルトの名無しさん
22/04/28 14:24:22.28 UYKtqYXXd.net
糖質か

989:デフォルトの名無しさん
22/04/29 15:02:24.64 VxUwChyk0.net
ここ最近、5ちゃん全体が重いのだが?
同志達もそう?

990:デフォルトの名無しさん
22/04/29 17:00:23.18 1aSdL/gJ0.net
>>973
昔から2ちゃん5ちゃんは世界のどこかで紛争が起きるとアクセスが急増したりサイバー攻撃されたりで重くなる
今はロシちゃんウクちゃんのせい

991:デフォルトの名無しさん
22/04/29 19:06:07.89 lunnn7Hg0.net
5chのサーバーはアメリカにある
なんかあるとすぐに攻撃されるからな

992:デフォルトの名無しさん
22/04/30 00:10:15.39 xtMjZAZqa.net
まったく重くないが。
そろそろ次スレよろ

993:デフォルトの名無しさん
22/04/30 10:32:12.86 lfBpjyTL0.net
>>976
はぁ?よろじゃねえよ
てめえが立てろハゲ

994:デフォルトの名無しさん
22/04/30 10:33:08.68 /k/F8o6k0.net
よろ~☆ミ

995:デフォルトの名無しさん
22/04/30 11:25:04.05 SY9/68Ub0.net
46497!

996:デフォルトの名無しさん
22/04/30 15:57:06.54 jIMADI4Y0.net
あれ?昔からのしきたりで、スレ主が次のスレ立てを担当するはずでは??

997:デフォルトの名無しさん
22/04/30 15:58:48.35 ttNuaWX+d.net
質問したい奴が立てればいいぐらい
どうでもいいスレだろ

998:デフォルトの名無しさん
22/05/01 00:13:28.72 AQA/eAvl0.net
980番を踏んだ奴が立てるんじゃなかったか

999:デフォルトの名無しさん
22/05/01 01:58:03.34 Pk0oKD+E0.net
建て方知らないもん
アソコの立て方は得意だけどさ

1000:デフォルトの名無しさん
22/05/01 02:01:11.00 q0kLnjNbd.net
立てても使い道(相手がいない)がないのになぜ立てるか

1001:デフォルトの名無しさん
22/05/01 02:24:06.36 2t63WK/jM.net
立てたぞ
Excel VBA 質問スレ Part76
スレリンク(tech板)

1002:デフォルトの名無しさん
22/05/01 05:51:26.54 QKAZyHTH0.net
>>985
有能

1003:デフォルトの名無しさん
22/05/03 14:10:11.29 X7BfbxUdr.net
Excel2019になってから重いデータを処理する時にエラーが出やすくなりました。
7000データあるものから鳥瞰図を作成して画像として貼り付ける処理をしているんですがコピーして貼り付ける際にたまにエラーが発生します。(1004データを貼り付けできません)
バッファとして貼り付ける前にwaitで数秒待ってあげるとエラーが出なくなるんですが……
仕方ないんですかね?

1004:デフォルトの名無しさん
22/05/03 16:57:37.12 9Zz7qGMa0.net
エラーをキャッチすれば?

1005:デフォルトの名無しさん (ワッチョイ 2701-XZ6m)
22/05/03 18:40:38 1FiEgH3Q0.net
エラー発生時にエラータグにとばしてそこで数秒待って再度実行も試しましたが結局永久ループになってしまいました。

1006:デフォルトの名無しさん (ワッチョイ 075f-erxH)
22/05/03 18:51:21 wJ2FprYn0.net
DoEvents入れてみるとか

1007:デフォルトの名無しさん
22/05/03 19:57:23.11 1FiEgH3Q0.net
DoEventsも最初に試しましたがイマイチでした。
あまり同じような症状が出ている方少ないのかな?重い処理だと次の処理が追い越しちゃってエラーが出てる感じなんですよね。

1008:デフォルトの名無しさん
22/05/03 23:05:49.83 0jm7qJTo0.net
Application.ScreenUpdating = False
をやってから処理して、終わったら
Application.ScreenUpdating = True
にしてみたら?

1009:デフォルトの名無しさん
22/05/04 01:08:45.09 llwekS7n0.net
>>987
まぁ同期が取り切れていないということで、
コピーが終了したタイミングが取得出来ないと言うことなら待たせるのは仕方ないんじゃないかな?
後続の処理の流れによりけりになるけど、
ある程度時間が経過すればエラーが起きなくなると言うことであれば、それを待たせる時間がもったいないなら
そこで貼り付けはしないで後続処理を進めて、貼り付け自体はタイマーでイベントを起こしてそこで貼り付けの処理すれば時間の節約にはなるかも知れない。
内部的にどんな感じで処理されてるか分からないから後続処理の内容によって待つ時間を増やさなければいけなくなるかも知れないけどね。

1010:デフォルトの名無しさん
22/05/04 04:41:51.29 Bmz10qTz0.net
アドバイスありがとうございます。
Application.ScreenUpdating=Falseはいれています。
やはり仕方無いのですかね?
PCの性能面でも良くないのかも知れません。
メモリーリークのような事が起こっているのでしょうかね?

1011:デフォルトの名無しさん (ワッチョイ 87da-Nh0L)
22/05/04 06:45:06 XHZmixda0.net
オブジェクト変数のその都度開放とかは?

1012:デフォルトの名無しさん (ワッチョイ df4f-bbcD)
22/05/04 07:00:53 llwekS7n0.net
>>994
メモリーリークというのは
メモリの解放を上手く行えずゴミが溜まったり
本来指すべきメモリのアドレスを
違うアドレスをさして変なアドレスからデータ読んだり
変なところに飛んだりすることを指す訳だけど
話を聞いた限りだとその可能性は低いかな。

強いて言えばコピーする際にクリップボードが
数、あるいは容量的にパンパンで次のコピーを
行おうとしたときにもうコピー出来ない、
またはコピーしようとしているんだけど
空き容量が少なくて、そこで内容を展開しているから
時間が掛かっているとかの類が考えられるかな。

どのくらいコピーペーストしているのか分からないけど、
とりあえずコピーペーストする前かした後に
一回一回、クリップボードをクリアする処理を挟んでみては?

1013:デフォルトの名無しさん
22/05/04 07:22:42.23 sN1XYX+fd.net
Excel2019当方でも同じ
PCの性能が良すぎてExcelの処理が追いついてない感じ
極力クリップボード経由を避ける
どうしても必要なら間にDoEvents - Sleep - DoEvents を入れる

1014:デフォルトの名無しさん
22/05/04 07:28:33.66 CsYq7Xth0.net
>>996
> 本来指すべきメモリのアドレスを
> 違うアドレスをさして変なアドレスからデータ読んだり
> 変なところに飛んだりすることを指す訳だけど
それはメモリーリークとは言いません

1015:デフォルトの名無しさん
22/05/04 11:56:06.30 ZnBr6fHma.net
pc買い替え

1016:デフォルトの名無しさん
22/05/04 12:08:38.05 7uEIwZovM.net
1000

1017:1001
Over 1000 Thread.net
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 83日 21時間 44分 6秒

1018:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています


最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch