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


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

Excel VBA 質問スレ Part80



1 名前:デフォルトの名無しさん mailto:sage [2023/05/31(水) 08:23:38.97 ID:4RV1IxmB.net]
ExcelのVBAに関する質問スレ
コード書き込みや作成依頼もOK

次スレは>>980が立てること
無理なら細かく安価指定

関連スレ
Excel VBA 質問スレ Part79(ワッチョイあり)
https://mevius.5ch.net/test/read.cgi/tech/1674875532/

※前スレ
Excel VBA 質問スレ Part79
https://mevius.5ch.net/test/read.cgi/tech/1674874007/

152 名前:デフォルトの名無しさん mailto:sage [2023/09/01(金) 15:03:21.78 ID:c6Z/nkux.net]
MSコミュニティに似たような質問があるのを見付けた
https://answers.microsoft.com/ja-jp/msoffice/forum/all/excel-2007/944a0d3a-4145-4406-bb47-0e7de3d660b3
10年も前の事例だけど、辛辣な回答ひとつしか

153 名前:付いていない
当時はクラッシュしてた、ってんだから、エラーに成るだけ手心は加えられてるのか
[]
[ここ壊れてます]

154 名前:141 mailto:sage [2023/09/01(金) 15:35:25.53 ID:ne/hzOol.net]
>>149
そのエラーは デバッグするのが 厄介だ。
去年、職業訓練校でVBAを習ったとき、
SQLが ちょっと違うだけで そのエラー発生した。

155 名前:デフォルトの名無しさん [2023/09/01(金) 16:26:50.24 ID:u1EfhygX.net]
>>150
静的にはできるのにね?
フォーム内に用意した1個のフレーム内に動的に配置しようとするだけでエラー吐くので、後段で以下でご指摘いただいた点はとりあえず無関係のようです
今回は外側をマルチページで代用したけど、モヤっとする…

156 名前:デフォルトの名無しさん mailto:sage [2023/09/01(金) 16:55:57.14 ID:c6Z/nkux.net]
ン? 静的にはできるんだ 
じゃあ、フレーム内にコントロールを配置する時に、ちょっと順番を間違えるとフレームとの
リンクが切れて、見た目はフレーム内だけど別物として配置されてしまうように成るとかと
似た状況なんじゃ?
動的に配置するモジュール内で、その過程をなぞらないと入れ子フレームとして設置できない
とかが思い付いたが、果たして

或いは、静的に配置しておいてvisibleをon/offで切り替えるとか
何にしろ利用者の現場でトラブらないような、安定した方法が望まれる(シンプルイズベスチャ)

157 名前:デフォルトの名無しさん [2023/09/01(金) 17:05:15.42 ID:QGSBVRun.net]
>>152
職業訓練校www

158 名前:デフォルトの名無しさん mailto:sage [2023/09/01(金) 18:26:16.13 ID:jzQZ9hsj.net]
たまに訓練校でVBAコースとか見掛けるけど、どの辺りまで教わるのですか? 経験したエロい人教えて

159 名前:デフォルトの名無しさん [2023/09/01(金) 18:41:22.55 ID:qEQ7NwLw.net]
指まで

160 名前:141 mailto:sage [2023/09/01(金) 20:45:25.45 ID:ne/hzOol.net]
>>156
【架空の店や 個人病院など】の『商品CODE一覧表』とか 『顧客の住所録』とかを、ACCESSで 複数の『データベースの箱』を用意する。
EXCELで入力フォーム作って、SQLでACCESSデータベースの追加・変更。

授業では、スクレイピングや IE制御は習ってない。← これは独学(ネットで)

職業訓練校に通えば 就職できる訳ではない。 
俺は『失業給付金の延長』が最大の目的だった。



161 名前:デフォルトの名無しさん mailto:sage [2023/09/02(土) 09:29:37.93 ID:t45vXwol.net]
エロチックな人体験談ありがとうございました。
なるほど給付金延長目当てはあるあるな話ですね。
自分は♀との出逢い目当てで通いますよ。

162 名前:デフォルトの名無しさん [2023/09/09(土) 09:48:51.46 ID:x8sBUwGJ.net]
With Sheet1
Dim ary
ary = .range(セル範囲)
End With

これ多用してきたんだけど、セル範囲がセル一個だけだとaryに配列じゃなくて普通のVariant型が入ることに今気づいた
この後の処理は配列であることを前提にやってるから、そこでエラーが起きる
結構いろんな所で使ってたからこれはやべー・・・・

163 名前:デフォルトの名無しさん [2023/09/09(土) 09:58:43.37 ID:x8sBUwGJ.net]
最終行取得してセル範囲を定義したりすると、
1セルになる可能性があるからダメなんだよな

この方法使う時はセル範囲は固定した上で、
代入された配列の要素が異常値なら排除する仕組みの方がいいのか

164 名前:デフォルトの名無しさん mailto:sage [2023/09/09(土) 11:21:24.50 ID:+0dsEkXE.net]
選択された範囲がセルひとつだけだった場合は
エラーメッセージ出して範囲を拡げるよう促す 処理を停める そうする方が手間は少ない

165 名前:デフォルトの名無しさん mailto:sage [2023/09/09(土) 11:38:21.48 ID:skhr6YT2.net]
ary = .range(セル範囲)
If (VarType(ary) And vbArray) = 0 then ReDim ary(1 To 1, 1 To 1): ary(1, 1) = .range(セル範囲)

こんな感じで必ず配列になるように対処したことはある。
逆に値を戻すときは、一つのセルに配列を入れようとしてもOK。

166 名前:デフォルトの名無しさん mailto:sage [2023/09/09(土) 15:33:08.91 ID:F9Z+i/7c.net]
>>162
たとえていうなら、この表に追加的に買ってきてほしいものを書いてくれたら買ってきますよ、というようなものなので、買ってきてほしいものがバナナだけの時もあるわけで、バナナだけじゃ困るというエラーメッセージを出すのはちょっと・・・
>>163
それ考えたんですけど、ちょい面倒くさいなぁと思ってやめました
でもそのコードは簡潔でいいですね。拝借させてもらいますね


ありがとうございました

167 名前:デフォルトの名無しさん mailto:sage [2023/09/09(土) 17:39:26.81 ID:be6v4mh1.net]
同じ問題に直面したけどググってみつけた自作関数GetArrFromRangeで対応してるわ
https://yaromai.jp/cellvalue-array/
流れとしては>>163に近いかな?

168 名前:デフォルトの名無しさん [2023/10/05(木) 02:08:04.21 ID:+NVPN5Yc.net]
あるセルをマウスで選択すると、
選択したそのセルと隣のセルも消す、
というマクロを作って現在動かしていますが、
どうしても類似のシートをもう一つ作って連動
させたいのですが、例えば、
シートAのセルのE1をマウスで選択した時、
シートBのセルのE1も同時に選択状態にする、
というマクロは可能でしょうか?

宜しくお願い致します。

169 名前:デフォルトの名無しさん [2023/10/05(木) 03:02:59.67 ID:+NVPN5Yc.net]
追記
別に「同時」でなくともいいです。
要は、シートBのセルのE1をマクロで
操作できればなんだっていいです。

170 名前:デフォルトの名無しさん [2023/10/05(木) 04:09:43.70 ID:tRnDXjTr.net]
同時は無理かも知れんが
同時じゃなくて良ければ可能

次の方どうぞ



171 名前:デフォルトの名無しさん [2023/10/05(木) 08:25:15.77 ID:+NVPN5Yc.net]
>>168
どうやればできるか教えてください

172 名前:デフォルトの名無しさん [2023/10/05(木) 10:30:07.40 ID:AvBTKCCq.net]
Range("シートB!E1").Select

173 名前:デフォルトの名無しさん [2023/10/05(木) 12:27:59.35 ID:9btcP5Iv.net]
>>166
「選択したそのセルと隣のセルも消す、というマクロ」
をここに書いてもらえればアドバイスできる。

174 名前:デフォルトの名無しさん [2023/10/05(木) 20:37:12.52 ID:+NVPN5Yc.net]
>>166です。
自己解決しました。
結局ここで質問している方法は分かりませんでしたが、
別の方法でなんとかできるようになったのでそちらを
採用します。皆さん有難うございました。

175 名前:デフォルトの名無しさん [2023/10/05(木) 20:37:35.99 ID:+NVPN5Yc.net]
>>166です。
自己解決しました。
結局ここで質問している方法は分かりませんでしたが、
別の方法でなんとかできるようになったのでそちらを
採用します。皆さん有難うございました。

176 名前:デフォルトの名無しさん [2023/10/09(月) 18:37:12.70 ID:bDtEeCCl.net]
test

177 名前:デフォルトの名無しさん [2023/10/09(月) 18:37:28.81 ID:bDtEeCCl.net]
test

178 名前:デフォルトの名無しさん [2023/10/09(月) 18:43:55.87 ID:bDtEeCCl.net]
MT4のDDEサーバー機能使ってエクセルにリアルタイムレート表示させてるんだが
ここで質問よい?

179 名前:デフォルトの名無しさん mailto:sage [2023/10/21(土) 00:44:14.90 ID:QYcnZo6w.net]
VBAとVBSで同じ内容をPOSTして、
返ってきたreponsebodyも同じなのに、
操作出来るHtmlElementが違うってどういう事やねん!!

180 名前:デフォルトの名無しさん mailto:sage [2023/10/24(火) 23:47:02.19 ID:Qu5vmivm.net]
forで配列testにシート名を格納し、Sheets(test).Selectでシートを複数選択したいですがエラー9になります
Sheets(test(0)).Selectとするとエラーは出ないです

Debug.Print test(0)
Debug.Print test(1)
と指定するとシート名が確認できますが
Debug.Print Join(test)
と指定すると空の値でした。test0とtest1の値が連携されて表示される想定でしたがなぜ空なんでしょうか



181 名前:デフォルトの名無しさん [2023/10/25(水) 01:50:17.21 ID:iLS1no5v.net]
配列testの初期化かforでシート名を取得している部分がおかしいんじゃない?そこのコードを書いてもらわないと。

182 名前:デフォルトの名無しさん mailto:sage [2023/10/25(水) 19:24:35.26 ID:8bx5SHat.net]
>>178
そもそも
>test0とtest1の値が連携されて表示される想定
が間違ってるんだが
それができたとしても、Sheets().Selectで複数シートのセレクトはできないと思うが

183 名前:デフォルトの名無しさん mailto:sage [2023/10/25(水) 19:32:55.99 ID:8bx5SHat.net]
>>178
試したけど、
Sheets()に文字列配列渡せば複数セレクトできるな
渡すのは連結された文字列とかじゃなくて、文字列の配列津
testを文字列配列で宣言すればいけるんっぽ

184 名前:デフォルトの名無しさん mailto:sage [2023/10/25(水) 20:15:45.40 ID://t71i0T.net]
>>179-181
ご指摘いただいて確認し直したところRedimの指定が間違ってました
ありがとうございました

185 名前:デフォルトの名無しさん [2023/10/31(火) 23:39:07.52 ID:0l/KyLnQ.net]
バージョンはExceloffice2019です。
「Sheet1」で購入した野菜の一覧を作成します。

 A1:A100に野菜の種類.例:トマト、キュウリ、キャベツ…
 B1:B100に野菜の産地.例:千葉、埼玉‥‥
 C1:C100に野菜の購入年月日.例:2023/10/31
 D1:D100に野菜の価格.例:1,000


「Sheet2」に
 A1:A5に野菜の種類 
 B1:B5に野菜の産地
 を記載したときに
 C1:C5に、「Sheet1」のAとBの条件に合う一番下の行の購入年月日を返す。
 かつ
 D1:D5に、「Sheet1」のAとBの条件に合う一番下の行の価格を返す。

 これをVBAで表現できますでしょうか。
 何卒、よろしくお願いいたします。

186 名前:デフォルトの名無しさん mailto:sage [2023/11/01(水) 02:50:19.57 ID:nS+y2GzJ.net]
できます

187 名前:デフォルトの名無しさん [2023/11/01(水) 02:56:30.71 ID:LeiRH4ql.net]
表現

'できらぁ

188 名前:デフォルトの名無しさん [2023/11/01(水) 03:05:32.93 ID:5z6NYMjm.net]
ぶいば

189 名前:デフォルトの名無しさん mailto:sage [2023/11/01(水) 03:12:36.26 ID:H7+Ix2LY.net]
仕様に応じて価格は変わります
価格に応じて仕様も変わります
色々突っ込みどころが多すぎる

190 名前:デフォルトの名無しさん mailto:sage [2023/11/01(水) 03:27:01.62 ID:Q2iQ3kej.net]
バージョンすらまともに書けない馬鹿に何を期待するのか



191 名前:デフォルトの名無しさん mailto:sage [2023/11/08(水) 17:47:52.62 ID:TYSKNLfT.net]
初歩的な質問ですみません
例えばですがセルA2の型が標準だったとして、標準だった場合は色を付けたいです
どうやってセルが標準かどうか判断すれば良いか教えて頂けませんでしょうか

192 名前:デフォルトの名無しさん mailto:sage [2023/11/08(水) 18:14:40.14 ID:TYSKNLfT.net]
186です
自己解決しました

193 名前:デフォルトの名無しさん mailto:sage [2023/11/08(水) 19:53:31.21 ID:7oppFyNo.net]
>>190
どうやったの?

194 名前:デフォルトの名無しさん mailto:sage [2023/11/10(金) 00:50:32.41 ID:VwCFMbHh.net]
俺も気になる。
NumberFormatLocalじゃない奇想天外な解決策だったらウケる。

195 名前:デフォルトの名無しさん [2023/11/21(火) 22:58:20.04 ID:AR1yXI4p.net]
  If (a = 1) Then
 '{
   b = 1 ';
 '}
  Else
 '{
   b = 2 ';
 '}
  End If

どう?

196 名前:デフォルトの名無しさん mailto:sage [2023/11/21(火) 23:58:40.18 ID:xeomrwBy.net]
それVBAか?

197 名前:デフォルトの名無しさん mailto:sage [2023/11/22(水) 00:34:59.56 ID:byPvCzkk.net]
バレバレだと思ったらバレてなくてワロタ

198 名前:デフォルトの名無しさん mailto:sage [2023/11/26(日) 13:42:56.19 ID:8a4yzyW0.net]
>>193
どうでもいい

199 名前:デフォルトの名無しさん mailto:sage [2023/11/26(日) 20:04:28.62 ID:bZOTy+QC.net]
VBEで-キーを押すとExcelが落ちる
何で?

200 名前:デフォルトの名無しさん mailto:sage [2023/11/27(月) 19:55:15.09 ID:IFAh3DJf.net]
床に置いたら落ちないんじゃね



201 名前:デフォルトの名無しさん mailto:sage [2023/11/27(月) 20:06:45.93 ID:y0lY01bz.net]
俺もそう思う

202 名前:デフォルトの名無しさん [2023/11/27(月) 20:19:28.03 ID:wYp6UIkr.net]
なにごとも
低い位置においておけば落ちることはない

203 名前:デフォルトの名無しさん mailto:sage [2023/11/29(水) 05:31:22.23 ID:0nQJ/yPv.net]
Uiautomationでアプリに表示されてる文字を3万行くらい読み取ったら落ちた
エクセルじゃなくてアプリの方が
どういう理屈?

204 名前:デフォルトの名無しさん mailto:sage [2023/11/29(水) 09:05:11.59 ID:F9HVG0++.net]
イベントビューアーで何が起きたかぐらいは確かめなさい
再現性

205 名前:あるならタスクマネージャーのパフォーマンスでメモリなのかCPUなのか
とかも アプリの表示文字3万行だけで、アバウト過ぎる
[]
[ここ壊れてます]

206 名前:デフォルトの名無しさん [2023/11/29(水) 10:10:43.50 ID:sD7VzCeS.net]
昔はintの最大が32767 だからそれ越える数を扱うと落ちるソフトがよくあったな

207 名前:デフォルトの名無しさん mailto:sage [2023/11/30(木) 09:29:06.87 ID:vgaDfHiB.net]
変数の値がマイナスとか変な数字になるだけじゃないの?
その程度のことで落ちるの?

208 名前:デフォルトの名無しさん [2023/11/30(木) 10:14:04.34 ID:uCTIv0ls.net]
マイナスの場所がアクセスできなかったり
永遠にloopの終了条件に達しないとか
結果が大きくなりすぎてメモリ不足とかなる

209 名前:デフォルトの名無しさん [2023/11/30(木) 12:17:27.34 ID:3oFcABR+.net]
古いexcelも最下行が少なかった

210 名前:デフォルトの名無しさん mailto:sage [2023/12/01(金) 02:42:24.09 ID:xLT/7JKF.net]
このスレも落ちる



211 名前:デフォルトの名無しさん mailto:sage [2023/12/01(金) 16:31:31.03 ID:7wVpTT+J.net]
落ちないで

212 名前:デフォルトの名無しさん [2023/12/01(金) 17:06:11.81 ID:fwRU51B8.net]
ハゲないで

213 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 09:27:15.99 ID:gVhM2KTB.net]
戦えよ

214 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 09:57:19.84 ID:vycJbAdX.net]
Excel VBAって長時間経過すると一定間隔で一時的にCPU割り当てが止まったりする仕様ですか?
プログレスバーもどきやマクロ経過時間を10秒毎に表示させているんですが、毎回2万件を超えたあたりから一時的に処理が停止しているみたいなんですが。

215 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 09:58:41.46 ID:vycJbAdX.net]
訂正。10秒毎にではなく10件処理する毎にです。

216 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 10:01:01.61 ID:OwcK4uEB.net]
セルコピーの繰返しで条件付書式設定が多大になってるとか

217 名前:デフォルトの名無しさん [2023/12/02(土) 10:11:47.98 ID:0tC7Yjqi.net]
excelで一万件以上のデータを扱わないで下さい

218 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 10:11:58.70 ID:vycJbAdX.net]
変数の価をセルへ記入する処理は繰り返し行っていますが条件付書式は設定していないしセルからセルへのコピー処理はしていません。
処理開始から20000件あたりまではスルスルと進んで行って20000件を超えたあたりから休み休みになるのが謎です。
ソース的には同じことを繰り返しているだけなんですけどね。
セルへ記入されていく行数は増えていくのでそのあたりが原因なんでしょうか。

219 名前:デフォルトの名無しさん [2023/12/02(土) 10:29:12.94 ID:gVhM2KTB.net]
pcの性能じゃね
毎回起きるなら条件を変えてテストし発生条件をはっきりさせる

220 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 10:55:39.59 ID:5w2fWXOw.net]
計算式が2万行あるとか



221 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 10:58:44.05 ID:5w2fWXOw.net]
実行前に以下弄って画面更新を抑制してる?
Application.ScreenUpdating
Application.Calculation

222 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 11:01:53.10 ID:vycJbAdX.net]
いえ、単なる文字列を上から下に向かってひたすら記入していくだけです。
記入する文字列を決めるためにVlookup関数の結果をフィルターして抽出された1行を文字列としてセルに記入してますが、Vlookup関数の数は固定で増えるわけでは無いのでCPU負荷も一定なんじゃないかと思います。

223 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 11:02:50.91 ID:vycJbAdX.net]
>>218
Vlookup関数の結果を利用するのでそれはできないです。

224 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 11:03:58.36 ID:vycJbAdX.net]
あ、すみません
Application.ScreenUpdating
は抑止したり解除したりを繰り返してました。

225 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 12:25:52.64 ID:dC73Xol+.net]
原因追及したいのなら
出力データを増やさずに同じ行に書き出すとか

226 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 13:23:33.03 ID:gVhM2KTB.net]
そのうち前の担当が作ったとか言い出すんじゃね

227 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 17:03:47.70 ID:H7HADDQf.net]
Windowsの仕様として、重たい処理をさせてるときは中の人が勝手に一休みするようにできている
アプデがいくつもある時など、進捗の%が進んだり止まったりなのを目にしたこともあるだろう
エロ動画を何本もDLしてる時に同サイズなのにすぐ落ちるのといつまでも落ちないのがあるように

基本的にExcelは同じディレクトリにテンポラリーファイルを自動的に作る(Excelに限らないが
そのファイルと相互に連携して「戻る」だの「処理を取り消す」だの「保存しない」だのを可能にしている
システムファイルなので敢えて表示する指定をしないと通常は目に見えない
処理は目の前のファイルだけで無くそのシステムファイルにも反映されている
いっぺんに大量の仕事をさせると「さすがに休ませろよ」と両方のファイルがブー垂れる←チンタラし出す
for−nextとかLoopの中にDoEventを盛り込むと、多少は改善されるかも知れないしされないかも知れない
https://www.tipsfound.com/vba/05doevents-vba
https://qiita.com/nekohei/items/3fb066e267866bcae96c
正直なハナシ、おれには何が何だかさっぱり理解できないが呪文みたいなものなんだろう(違う

228 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 17:12:50.25 ID:hwp9WWnB.net]
デフォルト10分に一回の自動回復用データの保存か

229 名前:デフォルトの名無しさん [2023/12/02(土) 19:21:37.99 ID:FUL/sgR0.net]
>>224
馬鹿の妄想

230 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 19:43:05.04 ID:UnnytQXE.net]
>>224
バカの長文ってホント的を得てるな
応答なしってのは文字通りマウス操作やキー操作に応答がない状態で、
なぜそれが起きるかは操作に応答する余裕もないくらい全集中して処理してるから
リンク先に書いてあるのは定期的にマウスだのキーボードだの気にしろよって指示
ID:vycJbAdXが書いてることとは根本的に違う事象



231 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 21:20:16.63 ID:gVhM2KTB.net]
内容を理解しないで ○○すると速くなるとか、エラーを出なくするとかを検索で見つけたのを
鵜呑みにして呪文のように至る所に無意味なコードを貼るタイプかな

232 名前:デフォルトの名無しさん mailto:sage [2023/12/02(土) 22:41:07.55 ID:H7HADDQf.net]
「詳細設定」−「ハードウェア グラフィック アクセラレータを無効にする」にチェックしOK
使っていないアドインがあったらチェックを外す
可能性が高いのが、GPUがレッドゾーン タスクマネージャーのパフォーマンスでCPU・メモリ・ディスク
辺りはまったりと余裕ぶっこいてるのに、GPUがパンパン状態 これは増設できないマシンなら
どうしようもない 一行目の処理の前後でこれを比較してみて変わったら原因はそこ
 フリーズする訳でも無くちゃんと完走するなら「こういうもんだ」で済ますのも大人の対応
高性能ギンギン!のマシンとCeleronマシンでも現象一緒とかなら尚更コチラ側では対処のしようも無い

233 名前:デフォルトの名無しさん [2023/12/03(日) 01:31:41.80 ID:MKV2NgOh.net]
>Windowsの仕様として、重たい処理をさせてるときは中の人が勝手に一休みするようにできている

そもそもこれが嘘
そんな仕様ねーよ

234 名前:デフォルトの名無しさん [2023/12/03(日) 06:53:42.28 ID:xZHPSaOR.net]
>>203
そもそもintって何?
データ型は正確に書かないと

235 名前:デフォルトの名無しさん [2023/12/03(日) 06:55:03.43 ID:xZHPSaOR.net]
>>230
アイドリング中はデータの先読みをしているから、彼は勘違いして反対のことを言ってしまっているんだろうな。

236 名前:デフォルトの名無しさん mailto:sage [2023/12/03(日) 09:55:11.40 ID:5HcnYZkn.net]
重たい処理で休むってCPU温度が上がったせいで速度落とすあれのことかと

237 名前:デフォルトの名無しさん mailto:sage [2023/12/03(日) 11:08:35.63 ID:QTewqrs7.net]
>>224
これはひどい

238 名前:デフォルトの名無しさん mailto:sage [2023/12/03(日) 11:10:09.56 ID:QTewqrs7.net]
>>228
script kiddie

239 名前:デフォルトの名無しさん [2023/12/04(月) 15:12:23.07 ID:Nbpgvbo/.net]
for each で処理するときにI列は処理を飛ばしたかったので

for each rng in range
if rng.column = 9 then
goto skip
処理内容

という風にしたところすべての処理がスキップされてしまったので
以下のようにしたらうまくいきました。解決したんでよかったんですが
どういった理由で結果が違うのでしょうか?

if rng.column <> 9 then
処理内容

240 名前:デフォルトの名無しさん [2023/12/04(月) 15:18:26.28 ID:+hRuE00u.net]
skip,endif,next の位置関係を省略すんな



241 名前:デフォルトの名無しさん mailto:sage [2023/12/04(月) 16:25:34.26 ID:xc8M7hCZ.net]
まーたどっかから質問パクって来た?
https://oshiete.goo.ne.jp/qa/12821811.html
若干改変してるか RangeとCellsについて、小一時間問い詰められてみるのもいいかも
https://sugoikaizen.com/excelvba/2_80/
ここでこうだよって書かれても身に付かないだろうし(おれもだし

242 名前:デフォルトの名無しさん [2023/12/04(月) 16:43:57.28 ID:Nbpgvbo/.net]
質問パクったわけではないですが確かに似てますね
省略しないと以下になります
処理の内容は同じです

■うまくいく方

For Each rng In Range(Cells(3, 7), Cells(m, n))
If rng.Column <> 9 Then
If rng.Value = "-" Then
dataEx.Cells(j, i) = ThisWorkbook.Sheets(dataEx.Cells(1, i).Value).Cells(rng.Row, 3).Value
dataEx.Cells(j, i + 1) = ThisWorkbook.Sheets(dataEx.Cells(1, i).Value).Cells(2, rng.Column).Value
j = j + 1
End If
End If
-----------------------------------------------------------------
■すべてスキップされてしまう方

For Each rng In Range(Cells(3, 7), Cells(m, n))
If rng.Column = 9 Then
GoTo skipCol
If rng.Value = "-" Then
dataEx.Cells(j, i) = ThisWorkbook.Sheets(dataEx.Cells(1, i).Value).Cells(rng.Row, 3).Value
dataEx.Cells(j, i + 1) = ThisWorkbook.Sheets(dataEx.Cells(1, i).Value).Cells(2, rng.Column).Value
j = j + 1
End If
skipCol:
End If

243 名前:デフォルトの名無しさん [2023/12/04(月) 16:46:57.68 ID:Nbpgvbo/.net]
すみません最後両方とも「Next」付け忘れました

244 名前:デフォルトの名無しさん [2023/12/04(月) 17:25:36.52 ID:IJgpRS5M.net]
>>239
馬鹿はGotoを使う法則
こんなこと瞬時にわからん頭ならやめとけ

245 名前:デフォルトの名無しさん mailto:sage [2023/12/04(月) 20:44:12.36 ID:iY+/6ufA.net]
>>239
落ち着いてよく考えてみ

246 名前:デフォルトの名無しさん [2023/12/04(月) 21:18:11.46 ID:1Ww5lLLM.net]
ネタだろうな

247 名前:デフォルトの名無しさん mailto:sage [2023/12/05(火) 01:23:49.48 ID:9BlMohwu.net]
よく知らないけど、この= は代入演算子か
j = j + 1

この= は比較演算子か
If rng.Column = 9 Then

こんな= を、2つの意味で使う言語ってあるの?

Ruby では、= は代入演算子で、== は比較演算子だけど

248 名前:デフォルトの名無しさん [2023/12/05(火) 01:30:03.25 ID:+1t+2z4I.net]
Rubyの話にしたい例のキチガイ

249 名前:デフォルトの名無しさん mailto:sage [2023/12/05(火) 06:54:56.45 ID:i0GvpvVS.net]
>>244
馬鹿にはわからんよ
ドンマイ

250 名前:デフォルトの名無しさん mailto:sage [2023/12/05(火) 10:53:58.86 ID:3p/65ALc.net]
客観的にこの人はVBAができる人だと思ってもらうのに、VBAエキスパートのスタンダードを取るのは効果あり?

受験料高い上に対して難しくもない資格なんだけど、知らん人から見れば勘違いしてくれるかねぇ



251 名前:デフォルトの名無しさん [2023/12/05(火) 11:03:15.47 ID:3GhQ7B+D.net]
あんなハリボテみたいな資格で勘違いしてくれるような会社に入りたいのか?

252 名前:デフォルトの名無しさん mailto:sage [2023/12/05(火) 11:03:58.32 ID:0D+v86FO.net]
名刺に書くには恥ずかしくない?






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

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

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