!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付ける
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part66
https://mevius.5ch.net/test/read.cgi/tech/1589085825/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
Excel VBA 質問スレ Part67
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 33da-3+hg)
2020/06/26(金) 02:01:29.56ID:uDfmpksE040デフォルトの名無しさん (アウウィフ FFd3-d3ZO)
2020/06/28(日) 16:12:05.93ID:WMjrpZfvF 俺 = "童貞"
41デフォルトの名無しさん (ブーイモ MM0f-tZ42)
2020/06/28(日) 16:56:51.40ID:69pcuKP2M Const 俺 As String = "童貞"
42デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/28(日) 17:02:14.70ID:YhC9oGcZa Do While 俺
俺 = 1
If 俺 > 1 Then
Exit Do
End If
Loop
MsgBox "happy"
俺 = 1
If 俺 > 1 Then
Exit Do
End If
Loop
MsgBox "happy"
43デフォルトの名無しさん (ワッチョイ 8f40-Zl/h)
2020/06/28(日) 17:20:31.84ID:dFUOn9oJ0 >>35
式の中で最初に出てきた数字によって型が勝手に決められる → 嘘
32767以下の整数はInteger型 → 嘘
24& * 3600 (Double型) → 嘘
24# * 3600 (Long型) → 嘘
これで適当以外の何なんだよ
式の中で最初に出てきた数字によって型が勝手に決められる → 嘘
32767以下の整数はInteger型 → 嘘
24& * 3600 (Double型) → 嘘
24# * 3600 (Long型) → 嘘
これで適当以外の何なんだよ
4423 (ファミワイ FFb3-pKDl)
2020/06/28(日) 17:53:16.30ID:n2mRaag0F Timerに1000を掛けて見ても何か変だと思ったら
想定より早くIeTimerが実行される時があるみたいだ。
マシンの性能が良すぎるんですかね。
取り敢えず+200にして解決としときます。
MsgBoxの方は型とか考えたくないので
兎に角勉強になりました。 ありがとうございました。
想定より早くIeTimerが実行される時があるみたいだ。
マシンの性能が良すぎるんですかね。
取り敢えず+200にして解決としときます。
MsgBoxの方は型とか考えたくないので
兎に角勉強になりました。 ありがとうございました。
45デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/28(日) 19:11:04.99ID:LbQBFJ/O0 >>24
MsgBox 24 * 3600
MsgBox 24 * 36000
1行目はオーバーフローがでる
2行目はエラーが出ないで普通に計算されます
MsgBox 24 * 3600
MsgBox 24 * 36000
1行目はオーバーフローがでる
2行目はエラーが出ないで普通に計算されます
46デフォルトの名無しさん (ワッチョイ 0f43-3pn7)
2020/06/28(日) 19:21:56.72ID:nTfCGwDP0 特定のフォルダ内のファイルのファイル名を変えて、ついでにプロパティのコメントにも文字を入力したいです
for each f in fol.files
f.name=ファイル名
f.comment=コメント
next
みたいな感じでやりたいんですが、f.commentではだめなようです
どう書けばいいか教えてください
for each f in fol.files
f.name=ファイル名
f.comment=コメント
next
みたいな感じでやりたいんですが、f.commentではだめなようです
どう書けばいいか教えてください
47デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/28(日) 19:23:35.13ID:LbQBFJ/O0 Integer型 * Integer型 の計算結果が 32767を超えるとオーバーフローエラーがでる
Integer型 * Long型 の計算結果が 32767を超えてもエラーにならない
ってことじゃね
Integer型 * Long型 の計算結果が 32767を超えてもエラーにならない
ってことじゃね
48デフォルトの名無しさん (ワッチョイ 0fda-H7K1)
2020/06/28(日) 19:28:31.58ID:Vk36drdU0 win10でRS-232C使うとかなりの確率で
Set MSComm1 = New MSComm
のところでエラーになります
どうにかなりませんか
Set MSComm1 = New MSComm
のところでエラーになります
どうにかなりませんか
49デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/28(日) 19:52:40.03ID:LbQBFJ/O0 >>48
EasyComm ってのに変えたほうがいいかも
EasyComm ってのに変えたほうがいいかも
50デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/28(日) 20:30:15.72ID:LbQBFJ/O0 >>46
変更後のファイル名が重複するんじゃね
変更後のファイル名が重複するんじゃね
51デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/28(日) 20:32:56.52ID:LbQBFJ/O0 >>46
あとファイルの種類によってはコメントが無いのもある
あとファイルの種類によってはコメントが無いのもある
52デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/28(日) 20:35:06.31ID:+IGHtKO4a イジカミジゴー
53デフォルトの名無しさん (ブーイモ MM0f-nmuj)
2020/06/28(日) 20:39:46.50ID:yfJkjLDvM54デフォルトの名無しさん (アウアウエー Sabf-9ZHA)
2020/06/28(日) 21:16:46.93ID:yxdrwHPGa >>52
B'z乙
B'z乙
55デフォルトの名無しさん (アウアウウー Sad3-d3ZO)
2020/06/29(月) 10:38:25.17ID:2N59jCILa excel標準でmscommの開発用のライセンス無いよね?
56デフォルトの名無しさん (アウアウカー Sac3-jwjG)
2020/06/29(月) 13:58:37.89ID:T8IL5X90a B1の値に応じて、C1からC100の値が変動します
A1からA100までの文字列をB1に順番に入れていって、1回ごとにC1からC100を別シートのD列に上から順にコピーしていきたいです
A1からA100とC1からC100は、必ずしも100まで値が埋まっているわけではなく、途中までしか埋まっていないこともあります
別シートにコピーするときに、C列の空白分はコピーしないでD列に空白行を作らないようにしたいです
Array = Range(A1:A100)で配列になるらしいんですが、Forでループさせるときに1個ずつB1に入れていくところでつまずいてます
ここからどうやってA1からA100までを順番に取り出していけばいいのでしょうか?
それと、C列をコピーするときに空白のところまでで選択を止めて必要分だけコピーするにはどうすればいいですか?
A1からA100までの文字列をB1に順番に入れていって、1回ごとにC1からC100を別シートのD列に上から順にコピーしていきたいです
A1からA100とC1からC100は、必ずしも100まで値が埋まっているわけではなく、途中までしか埋まっていないこともあります
別シートにコピーするときに、C列の空白分はコピーしないでD列に空白行を作らないようにしたいです
Array = Range(A1:A100)で配列になるらしいんですが、Forでループさせるときに1個ずつB1に入れていくところでつまずいてます
ここからどうやってA1からA100までを順番に取り出していけばいいのでしょうか?
それと、C列をコピーするときに空白のところまでで選択を止めて必要分だけコピーするにはどうすればいいですか?
57デフォルトの名無しさん (ドコグロ MMbf-AMYG)
2020/06/29(月) 14:21:14.85ID:81b3XCdqM 二次元配列を一つずつ取り出すときはArray(上からの番号,1)
空白行までのコピーは
with worksheets(1)
.Range(.Cells(1,3) ,.Cells(1,3).End(xldown)).copy
end with
空白行までのコピーは
with worksheets(1)
.Range(.Cells(1,3) ,.Cells(1,3).End(xldown)).copy
end with
58デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 15:29:59.45ID:TB+oeC/70 どういう配列が作られたのかがそもそもわかんないって話でしょ?
デバッグの仕方覚えて、Arrayに何が入るかを確認できるようになったほうがいいわ
どういう配列が入ってるのかも確認できずに中身取り出すとかそもそも間違ってる
一行ずつ実行しながらローカルウィンドウで確認すれば
例えばこんな感じで配列が作られるのが確認できる
https://i.imgur.com/wDjGPTf.png
デバッグの仕方覚えて、Arrayに何が入るかを確認できるようになったほうがいいわ
どういう配列が入ってるのかも確認できずに中身取り出すとかそもそも間違ってる
一行ずつ実行しながらローカルウィンドウで確認すれば
例えばこんな感じで配列が作られるのが確認できる
https://i.imgur.com/wDjGPTf.png
59デフォルトの名無しさん (アウアウカー Sac3-jwjG)
2020/06/29(月) 15:49:01.80ID:T8IL5X90a60デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 15:52:32.50ID:TB+oeC/70 仮想COM使ってるバーコードリーダーからEasycomm使ってデータ読み取ろうとしたけどわからんかった
その辺の知識身につけたいんだけどとっかかりが分からない
知識ある人がうらやましい
その辺の知識身につけたいんだけどとっかかりが分からない
知識ある人がうらやましい
61デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 16:45:10.65ID:6d9dL1u1a62デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 17:04:47.20ID:TB+oeC/70 >>61
いわゆるキーボードモード(USB HID)になってるようなバーコードリーダーならそうなんだけどね
今使ってるのは仮想COM(USB COM)の設定になってて、HIDに切り替えようとするとPC再起動
しないといけなかったり、何かと面倒なんだわ
COMモードじゃないとシステムに入力出来なかったりするものもあるしね
勝手にやっちゃうと職場の他の人に迷惑かけるし
そこでなんとかCOMモードのままでHID的にエクセルに出力できないかなって。
NW7のバーコード読取り結果を出力させたいってだけなんだけど、うまくいかなかった
いわゆるキーボードモード(USB HID)になってるようなバーコードリーダーならそうなんだけどね
今使ってるのは仮想COM(USB COM)の設定になってて、HIDに切り替えようとするとPC再起動
しないといけなかったり、何かと面倒なんだわ
COMモードじゃないとシステムに入力出来なかったりするものもあるしね
勝手にやっちゃうと職場の他の人に迷惑かけるし
そこでなんとかCOMモードのままでHID的にエクセルに出力できないかなって。
NW7のバーコード読取り結果を出力させたいってだけなんだけど、うまくいかなかった
63デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 17:16:51.22ID:6d9dL1u1a 基幹システムとExcelが分離してるなら
キーボードを別のキーボードにするだけの事だから
数千円でUSBバーコードリーダー買ってきてぶっ刺した方が早そう
キーボードを別のキーボードにするだけの事だから
数千円でUSBバーコードリーダー買ってきてぶっ刺した方が早そう
64デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 17:27:14.16ID:TB+oeC/70 おっしゃる通りなんだけど
そこに立ちはだかる「セキュリティ?」の壁なんだわ
特にハードは目に見える分、よく分かってないお偉いさんでも口挟んでくる
おれ超末端だからハード新規導入は無理だ
ソフトは誤魔化せるんでこっちから攻めたかった
そこに立ちはだかる「セキュリティ?」の壁なんだわ
特にハードは目に見える分、よく分かってないお偉いさんでも口挟んでくる
おれ超末端だからハード新規導入は無理だ
ソフトは誤魔化せるんでこっちから攻めたかった
65デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 17:37:54.02ID:6d9dL1u1a それ、どっちがセキュアなんだかw
SD120(バーコードリーダー)を仮想シリアル通信で利用する
https://kagamikarasu.net/sd120_barcodereader_serial/
>これでプログラムに組み込むのが容易になるかと思います。
その先は知らん!
SD120(バーコードリーダー)を仮想シリアル通信で利用する
https://kagamikarasu.net/sd120_barcodereader_serial/
>これでプログラムに組み込むのが容易になるかと思います。
その先は知らん!
66デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/29(月) 17:47:36.41ID:pfpn6QaF0 >>64
上司に黙ってソフト変更とかするほうがセキュリティー的にNGだろ
上司に黙ってソフト変更とかするほうがセキュリティー的にNGだろ
67デフォルトの名無しさん (オッペケ Sra3-G+5W)
2020/06/29(月) 17:50:11.99ID:j9Yq0PlQr 業務時間も資産も使うんだし相談なり申請なりはしとけよ
68デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 17:50:20.02ID:TB+oeC/70 ちょ、そこで終わられても
69デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/29(月) 18:01:00.81ID:pfpn6QaF0 うまくいかないって具体的なエラーや表示もないし
どこまでできて何ができないか書いてないよね
どこまでできて何ができないか書いてないよね
70デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 18:11:42.18ID:TB+oeC/70 セキュリティー的にはな、
でもうちのは「セキュリティ?」だから
>>69
一応何らかのデータは取得できてて、不正確な数字やらスペースやらは羅列される
まぁそもそも仕組み分からず動かしてる段階で自分としては納得出来てないんで
その辺を学習できるとっかかりが見つかればと思って書いてみただけ
心当たりなければいいよ
いそぐものでもないし課題の1つとして気長に取り組んでみるわ
でもうちのは「セキュリティ?」だから
>>69
一応何らかのデータは取得できてて、不正確な数字やらスペースやらは羅列される
まぁそもそも仕組み分からず動かしてる段階で自分としては納得出来てないんで
その辺を学習できるとっかかりが見つかればと思って書いてみただけ
心当たりなければいいよ
いそぐものでもないし課題の1つとして気長に取り組んでみるわ
71デフォルトの名無しさん (ラクッペペ MM4f-TKJB)
2020/06/29(月) 18:19:31.08ID:6uUvaw7SM 関係ないけどcomってコミュニケーションのCOMでいいんだっけ?
昔 .com をカンパニーだと思ってたワシ
昔 .com をカンパニーだと思ってたワシ
72デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 18:42:30.00ID:6d9dL1u1a >>70
データ変換はこのスレの範疇なようなスレチの様な
1次元のいわゆる白黒バーコードはバイナリだから
https://ja.m.wikipedia.org/wiki/シリアルポート
とキーエンスのバーコード講座NW7
https://www.keyence.co.jp/ss/products/autoid/codereader/basic-nw7.jsp
でもお勉強しないとわかりません。
データ変換はこのスレの範疇なようなスレチの様な
1次元のいわゆる白黒バーコードはバイナリだから
https://ja.m.wikipedia.org/wiki/シリアルポート
とキーエンスのバーコード講座NW7
https://www.keyence.co.jp/ss/products/autoid/codereader/basic-nw7.jsp
でもお勉強しないとわかりません。
73デフォルトの名無しさん (オッペケ Sra3-5+Fh)
2020/06/29(月) 18:57:10.02ID:2GVfwDQBr74デフォルトの名無しさん (ワッチョイ 3f01-bXJj)
2020/06/29(月) 19:27:50.46ID:TB+oeC/7075デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 19:33:50.23ID:6d9dL1u1a >>74
同じ品番のバーコードリーダーを買いましょうw
同じ品番のバーコードリーダーを買いましょうw
76デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/29(月) 19:40:44.57ID:pfpn6QaF0 なんでわざわざコンプライアンスを破ろうとするのかわからん
77デフォルトの名無しさん (スップ Sddf-uLB2)
2020/06/29(月) 20:58:53.82ID:p0BvfhePd >>70
昔、そういうハードのサポートしてた。
POS関連でバーコ―ドリーダー、レシートプリンタ、何とかディスプレイ(金額表示)、キャッシュドロワーとか。
シリアルならフロー制御がどうなってるかとか含めて、ちゃんと設定しないとダメだぞ。
昔、そういうハードのサポートしてた。
POS関連でバーコ―ドリーダー、レシートプリンタ、何とかディスプレイ(金額表示)、キャッシュドロワーとか。
シリアルならフロー制御がどうなってるかとか含めて、ちゃんと設定しないとダメだぞ。
78デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/29(月) 22:23:41.83ID:R8I/2vyw0 ユーザーフォームに元に戻すボタンを作ろうと
奮闘中
・ブックやシート、列行の削除や挿入などはやらない
・セル内の数値同士の計算などをやらせる
基本的に無理だから*2のに対しては/2のボタン
とか逆を割り当てていこうかと思ったら四捨五入で座礁しますた
記録して元に復元させるってやり方かぁ
ムズそうすぎてちょっとあきらめてる
使用者には間違えるなと言うしかないか…
奮闘中
・ブックやシート、列行の削除や挿入などはやらない
・セル内の数値同士の計算などをやらせる
基本的に無理だから*2のに対しては/2のボタン
とか逆を割り当てていこうかと思ったら四捨五入で座礁しますた
記録して元に復元させるってやり方かぁ
ムズそうすぎてちょっとあきらめてる
使用者には間違えるなと言うしかないか…
79デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 22:35:48.51ID:6d9dL1u1a80デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/29(月) 22:40:32.32ID:R8I/2vyw081デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 22:44:33.56ID:9POaIpQ1a82デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/29(月) 22:50:58.30ID:R8I/2vyw0 一応タブ分けしてみた
一番左はデータを指定したシートに全部読み込む
次のタブで選択セル±の反転をさせる
最初はabsで絶対値にすればいいかと思ったけどマイナス値が必要な数値があったため*-1で
その次のタブで四捨五入
選択セルを0.00まで四捨五入するボタンと
0.0まで四捨五入するボタン
最後のタブで選択セル-A列にある数値の
引き算をさせるボタン
なんか工程毎にタブ分けしてみたけど
慣れないとみんな使いにくそう
なかなかなぁ
一番左はデータを指定したシートに全部読み込む
次のタブで選択セル±の反転をさせる
最初はabsで絶対値にすればいいかと思ったけどマイナス値が必要な数値があったため*-1で
その次のタブで四捨五入
選択セルを0.00まで四捨五入するボタンと
0.0まで四捨五入するボタン
最後のタブで選択セル-A列にある数値の
引き算をさせるボタン
なんか工程毎にタブ分けしてみたけど
慣れないとみんな使いにくそう
なかなかなぁ
83デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/29(月) 23:04:34.75ID:SxZPiP67a84デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/29(月) 23:31:00.77ID:R8I/2vyw085デフォルトの名無しさん (ワッチョイ 0fda-H7K1)
2020/06/29(月) 23:34:38.34ID:PVh3udJT0 操作する前に、シートをコピーして非表示にしとけば
戻すボタンでコピーしておいたシートに差し替えて戻すw
戻すボタンでコピーしておいたシートに差し替えて戻すw
86デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/30(火) 00:16:48.03ID:HFjntDoM0 間違えることくらいあるだろう
人間だもの
人間だもの
87デフォルトの名無しさん (アウアウエー Sabf-PKxn)
2020/06/30(火) 00:22:19.44ID:l6PnVpoXa88デフォルトの名無しさん (スップ Sddf-uLB2)
2020/06/30(火) 08:45:53.97ID:LUNyPqILd >>84
根本的な考え方が違う。
フォームの内容を全部ユーザー定義かクラスに持たせて、そこ経由で動作させるようにする。
何かの動作はユーザー定義を元に動作させ、ユーザー定義をフォームに読み込むようにすれば簡単だ。
根本的な考え方が違う。
フォームの内容を全部ユーザー定義かクラスに持たせて、そこ経由で動作させるようにする。
何かの動作はユーザー定義を元に動作させ、ユーザー定義をフォームに読み込むようにすれば簡単だ。
89デフォルトの名無しさん (ワッチョイ cfda-NJGG)
2020/06/30(火) 17:46:29.02ID:HFjntDoM0 普段からそういうの慣れてる人ならできるだろうが初心者に言っても無理だろ
90デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/30(火) 18:08:03.74ID:ulIgP7Tu091デフォルトの名無しさん (ワッチョイ cfcc-pPzt)
2020/06/30(火) 18:34:02.50ID:iUIa6Vpk0 配列の勉強中です
1行目にタイトルが入っていて、2行目以降に値が入っているシートで、C列に"年"、D列に"月"、E列に"日"が入っています。
そこで、同じ行のA列にC〜Eの値を結合して「年/月/日」の表示にしたいのですが、配列を使うにはどう書けばいいでしょうか?
Sub Test()
Dim i As Long
Dim LastRow As Long
LastRow = Cells(Rows.Count, 2).End(xlUp).Row
ReDim MyArray(LastRow - 2, 3) As Variant
ReDim DayArray(LastRow - 2) As Variant
MyArray = Range("C2:E" & LastRow)
For i = 0 To LastRow - 2
DayArray(i) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
Next i
Range("A2:A" & LastRow) = DayArray
End Sub
1行目にタイトルが入っていて、2行目以降に値が入っているシートで、C列に"年"、D列に"月"、E列に"日"が入っています。
そこで、同じ行のA列にC〜Eの値を結合して「年/月/日」の表示にしたいのですが、配列を使うにはどう書けばいいでしょうか?
Sub Test()
Dim i As Long
Dim LastRow As Long
LastRow = Cells(Rows.Count, 2).End(xlUp).Row
ReDim MyArray(LastRow - 2, 3) As Variant
ReDim DayArray(LastRow - 2) As Variant
MyArray = Range("C2:E" & LastRow)
For i = 0 To LastRow - 2
DayArray(i) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
Next i
Range("A2:A" & LastRow) = DayArray
End Sub
92デフォルトの名無しさん (ワッチョイ 4fe6-TKJB)
2020/06/30(火) 18:39:14.24ID:Z3NkR/bn0 数式張り付けろや
93デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 18:47:22.61ID:x94da/wE0 >>91
代入先がLastRow-1行1列の2次元なら配列もそうせんと
代入先がLastRow-1行1列の2次元なら配列もそうせんと
95デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 19:24:15.34ID:x94da/wE0 >>94
何の書き方?配列サイズを代入先セル範囲の行数と列数分用意するだけだぞ
何の書き方?配列サイズを代入先セル範囲の行数と列数分用意するだけだぞ
9691 (ワッチョイ cfcc-pPzt)
2020/06/30(火) 19:40:39.93ID:iUIa6Vpk0 ↓ですか?
"インデックスが有効範囲にありません"のエラーがでます
Dim i As Long
Dim LastRow As Long
LastRow = Cells(Rows.Count, 2).End(xlUp).Row
ReDim MyArray(LastRow - 2, 3) As Variant
ReDim DayArray(LastRow - 2, 1) As Variant
MyArray = Range("C2:E" & LastRow)
For i = 0 To LastRow - 2
DayArray(i, 1) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
Next i
Range("A2:A" & LastRow) = DayArray
"インデックスが有効範囲にありません"のエラーがでます
Dim i As Long
Dim LastRow As Long
LastRow = Cells(Rows.Count, 2).End(xlUp).Row
ReDim MyArray(LastRow - 2, 3) As Variant
ReDim DayArray(LastRow - 2, 1) As Variant
MyArray = Range("C2:E" & LastRow)
For i = 0 To LastRow - 2
DayArray(i, 1) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
Next i
Range("A2:A" & LastRow) = DayArray
97デフォルトの名無しさん (ワッチョイ fff7-pPzt)
2020/06/30(火) 19:42:59.95ID:s83lPCQk0 配列数クソめんどいからこれでいいよ
Sub test()
Dim endRow As Long
endRow = ActiveSheet.UsedRange.Rows.Count
Dim ary As Variant
ary = Range(Cells(1, 1), Cells(endRow, 5)).Value
Dim i As Long
For i = 1 To endRow Step 1
ary(i, 1) = VBA.DateSerial(ary(i, 3), ary(i, 4), ary(i, 5))
Next i
Range(Cells(1, 1), Cells(endRow, 1)).Value = ary
End Sub
Sub test()
Dim endRow As Long
endRow = ActiveSheet.UsedRange.Rows.Count
Dim ary As Variant
ary = Range(Cells(1, 1), Cells(endRow, 5)).Value
Dim i As Long
For i = 1 To endRow Step 1
ary(i, 1) = VBA.DateSerial(ary(i, 3), ary(i, 4), ary(i, 5))
Next i
Range(Cells(1, 1), Cells(endRow, 1)).Value = ary
End Sub
98デフォルトの名無しさん (ワッチョイ fff7-pPzt)
2020/06/30(火) 19:47:07.61ID:s83lPCQk0 range.valueからできる二次元配列の開始番号は0ではなく、1ですねえ
100デフォルトの名無しさん (ワッチョイ 4f5f-fXbV)
2020/06/30(火) 20:21:46.34ID:h7LW9tmr0 0番目のセルは無いのに0番目の配列要素はあるから面倒臭いよな
101デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 20:28:40.73ID:x94da/wE0 場合によってはoffset(i)にすればよい
10291 (ワッチョイ cfcc-pPzt)
2020/06/30(火) 20:44:53.74ID:iUIa6Vpk0 すみません勘違いをしていました。最終行の
「Range("A2:A" & LastRow) = DayArray」
だと、A列が2行目以降空欄になってしまいます。
「Range(Cells(2, 1), Cells(LastRow, 1)) = DayArray」
も同じでしたが、
For i = 2 To LastRow
Range("A" & i) = DayArray(i - 1, 1)
Next i
だと入りますが、できれば一括で置き換えたいので、正しい書き方を教えてください
「Range("A2:A" & LastRow) = DayArray」
だと、A列が2行目以降空欄になってしまいます。
「Range(Cells(2, 1), Cells(LastRow, 1)) = DayArray」
も同じでしたが、
For i = 2 To LastRow
Range("A" & i) = DayArray(i - 1, 1)
Next i
だと入りますが、できれば一括で置き換えたいので、正しい書き方を教えてください
103デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 20:53:49.15ID:x94da/wE010491 (ワッチョイ cfcc-pPzt)
2020/06/30(火) 21:20:49.01ID:iUIa6Vpk0 >>103
Forの処理をこれに変えたらできました。ありがとうございます
DayArray(i - 1, 0) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
Forの処理をこれに変えたらできました。ありがとうございます
DayArray(i - 1, 0) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
105デフォルトの名無しさん (スプッッ Sd5f-at/t)
2020/06/30(火) 21:53:25.32ID:5LSCXiWjd ListView(lvw1、lvw2)を2つ用意して、それぞれに同じデータを同じ順番に追加した状態です。
矢印キーの上下でlvw1とlvw2の同行選択状態ってどうやってやるんですか?
矢印キーの上下でlvw1とlvw2の同行選択状態ってどうやってやるんですか?
106デフォルトの名無しさん (アウアウウー Sad3-fXbV)
2020/06/30(火) 22:01:34.74ID:3GBrKjbXa >>105
1と2で同じ操作をやりたいなら、別プロシージャに切り分けて(関数化)それをそれぞれに処理する方がわかりやすい
1と2で同じ操作をやりたいなら、別プロシージャに切り分けて(関数化)それをそれぞれに処理する方がわかりやすい
107デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 22:14:31.69ID:x94da/wE0 >>105
keydownイベントで上下の時になんやかんやする
keydownイベントで上下の時になんやかんやする
108デフォルトの名無しさん (ワッチョイ 4f7c-H7K1)
2020/06/30(火) 22:19:33.56ID:x94da/wE0 操作に関わらず一緒でいいならchangeイベントで楽に済ませられるが…
109デフォルトの名無しさん (ワッチョイ 3fb5-jCQM)
2020/06/30(火) 22:39:03.05ID:ulIgP7Tu0 Sub 四捨五入()
Dim PP As Range
Dim SELU As Range Set PP = Selection.EntireRow Set PP = Intersect(PP, Range("G:AE")) If WorksheetFunction.Count(PP) = 0 Then Exit Sub Set PP = PP.SpecialCells(xlCellTypeConstants, xlNumbers) For Each SELU In PP SELU = Round(SELU, 2) SELU.NumberFormatLocal = "0.00;-0.00;0" Next SELU End Sub
昨日の俺です
こんな感じで四捨五入をしてる
やはり記録するかコピーしといて間違えたら戻す作戦かなあ
Dim PP As Range
Dim SELU As Range Set PP = Selection.EntireRow Set PP = Intersect(PP, Range("G:AE")) If WorksheetFunction.Count(PP) = 0 Then Exit Sub Set PP = PP.SpecialCells(xlCellTypeConstants, xlNumbers) For Each SELU In PP SELU = Round(SELU, 2) SELU.NumberFormatLocal = "0.00;-0.00;0" Next SELU End Sub
昨日の俺です
こんな感じで四捨五入をしてる
やはり記録するかコピーしといて間違えたら戻す作戦かなあ
110デフォルトの名無しさん (オッペケ Sra3-gdfu)
2020/06/30(火) 22:56:39.68ID:RrxBtxCBr A列とB列にXYデータが書かれているファイルがある
このファイルが複数あり、データを縦にくっつけてひとつのファイルにする方法をお願い致します。
このファイルが複数あり、データを縦にくっつけてひとつのファイルにする方法をお願い致します。
111デフォルトの名無しさん (ドコグロ MMc3-qQym)
2020/06/30(火) 23:33:01.16ID:ayj87xxdM >>110
「vba 別のブック間 コピー」でググればそれなりの答えのサイトは出てくるよ
「vba 別のブック間 コピー」でググればそれなりの答えのサイトは出てくるよ
112デフォルトの名無しさん (ワッチョイ 1fe3-BXkI)
2020/07/01(水) 16:24:36.34ID:/ZTplk5x0 グラフの列の範囲を1つ進めて、範囲が変わったグラフを眺めてまた次の範囲を選択するマクロにしたいのですが、うまくいきません。
sleepで5秒待機するループにすると、マクロが終わるまでグラフはそのままです。
何か良い方法はありますか?
sleepで5秒待機するループにすると、マクロが終わるまでグラフはそのままです。
何か良い方法はありますか?
113デフォルトの名無しさん (ワッチョイ bf7c-c9XW)
2020/07/01(水) 16:38:43.05ID:ufrQ+5Zi0 新しい表示にしてから待機したらいいんでないの
114デフォルトの名無しさん (ワッチョイ 1ecc-VQSO)
2020/07/01(水) 17:00:30.01ID:JVz0cdM50 DoEvents
115デフォルトの名無しさん (ワッチョイ 3a33-h2ht)
2020/07/01(水) 17:01:38.04ID:wdJg4V2k0 眺め終わったら自分でボタン押す仕様にすればいい
116デフォルトの名無しさん (アウアウエー Sa82-qC4h)
2020/07/01(水) 18:02:59.35ID:cdm/n45Wa 眺めるってw
117デフォルトの名無しさん (オッペケ Sr23-aBdg)
2020/07/01(水) 18:14:23.56ID:BGy1oUher A列に上から1万個くらいのデータがある。
ある値以下なら行全体削除、上詰めにするマクロをお願い致します。
ググってもまとをえたのがなく困ってます。
ある値以下なら行全体削除、上詰めにするマクロをお願い致します。
ググってもまとをえたのがなく困ってます。
118デフォルトの名無しさん (ワッチョイ bf7c-c9XW)
2020/07/01(水) 18:21:37.82ID:ufrQ+5Zi0 >>117
作業列作ってある値以下なら1立てる→1でオートフィルタ→行削除
作業列作ってある値以下なら1立てる→1でオートフィルタ→行削除
119デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/01(水) 18:24:14.85ID:g4YauoQu0 >>117
どうせ暇なんだろ、1万くらい手作業でやれよ
どうせ暇なんだろ、1万くらい手作業でやれよ
120デフォルトの名無しさん (アウウィフ FFcf-ewff)
2020/07/01(水) 18:24:43.29ID:v2a99oiHF121デフォルトの名無しさん (ワッチョイ 0b09-ERT+)
2020/07/01(水) 18:34:27.89ID:5XfsDMDI0 wordをcomで操作しているんですが、基本的にcomは
同期処理できないんですか?
たとえば、よくあるprintout(wordVBAの)〜Set wordApp = Nothing
の流れなんかは、Application.Waitを入れないと印刷される前に
終わってしまいます。
同期処理できないんですか?
たとえば、よくあるprintout(wordVBAの)〜Set wordApp = Nothing
の流れなんかは、Application.Waitを入れないと印刷される前に
終わってしまいます。
122デフォルトの名無しさん (ワッチョイ 1e61-LTdq)
2020/07/01(水) 18:38:53.74ID:34UZRJ820 >>117
dim r as long
dim was as excel.worksheet
set we=activesheet
Do while r>0
if ws.cells(r,”A”)<ある値 then
ws.rows(r).delete shift:=xlup
else
r=r-1
end if
loop
パフォーマンスは知らん
dim r as long
dim was as excel.worksheet
set we=activesheet
Do while r>0
if ws.cells(r,”A”)<ある値 then
ws.rows(r).delete shift:=xlup
else
r=r-1
end if
loop
パフォーマンスは知らん
123デフォルトの名無しさん (ワッチョイ 87da-VQSO)
2020/07/01(水) 19:21:24.82ID:g4YauoQu0 そして動かないとか言ってくる初心者
124デフォルトの名無しさん (ワッチョイ 8f5f-ewff)
2020/07/01(水) 19:44:41.54ID:l3YNJLMh0 deleteは重いわ誤作動起こしやすいわいいことないよな
125デフォルトの名無しさん (ワッチョイ 0a02-DLMH)
2020/07/01(水) 19:59:04.37ID:fKGbFrld0 誤作動なんて起こすの?
単にセル番号計算ミスしたスクリプト書くだけなら理解できるけど、誤作動なんてあったら使えないな
単にセル番号計算ミスしたスクリプト書くだけなら理解できるけど、誤作動なんてあったら使えないな
126デフォルトの名無しさん (アウアウウー Sacf-PG6b)
2020/07/01(水) 20:06:30.76ID:Tir3cVcXa フィルターかけてカレントリージョンでコピーして新規シートに貼り付けが良さそう
127デフォルトの名無しさん (ドコグロ MMc2-4eOZ)
2020/07/01(水) 21:01:32.84ID:v34eJavmM128デフォルトの名無しさん (ワッチョイ 1eae-M/Ft)
2020/07/01(水) 21:43:01.53ID:H9TCgnXe0 Webで見たぐらいの初心者なのですが
書式設定の複数1行列を色変える作業が
200回ほどやらなきゃいけなく
マクロ組んでみようかと頑張ったのですが
上手くいきません
Dim a As Integer
Dim row1 As Integer
row1 = 3
For a = 0 To 200
Columns("row1 + a , P + a").Select
Selection.Format Conditions.以下略
Selection.Format Conditions以下略
With Selection.略
Selection略
Selection略
Selection略
End With
Next a
row1を無くしてb=3
これをColumnsをRange(b+a,b+a)
で出来ますでしょうか?
Rangeの指定カッコ内では数式を入れられないとかありますか?
書式設定の複数1行列を色変える作業が
200回ほどやらなきゃいけなく
マクロ組んでみようかと頑張ったのですが
上手くいきません
Dim a As Integer
Dim row1 As Integer
row1 = 3
For a = 0 To 200
Columns("row1 + a , P + a").Select
Selection.Format Conditions.以下略
Selection.Format Conditions以下略
With Selection.略
Selection略
Selection略
Selection略
End With
Next a
row1を無くしてb=3
これをColumnsをRange(b+a,b+a)
で出来ますでしょうか?
Rangeの指定カッコ内では数式を入れられないとかありますか?
129デフォルトの名無しさん (ワッチョイ 1eae-M/Ft)
2020/07/01(水) 22:17:29.48ID:H9TCgnXe0 Range(cells(a,1),cells(a,16)).Select
でやってみます
でやってみます
130デフォルトの名無しさん (アウアウウー Sacf-ewff)
2020/07/01(水) 22:45:11.71ID:xxJ42X4qa 何故初心者はSelectしたがるのか
131デフォルトの名無しさん (ドコグロ MM2b-21HI)
2020/07/01(水) 23:36:22.71ID:yn1qRX7nM132デフォルトの名無しさん (ワッチョイ 87da-z1wt)
2020/07/02(木) 01:40:39.72ID:Y/spJvDG0 条件付き書式とかは?
133デフォルトの名無しさん (オッペケ Sr23-aBdg)
2020/07/02(木) 02:34:51.75ID:G8g1bCvWr134デフォルトの名無しさん (ワッチョイ 27ea-c9XW)
2020/07/02(木) 04:05:38.32ID:vmiMC9VK0 教えてください。
imagemsoの名称からfaceidに変換することは可能でしょうか?
もしくはmsoBarPopupでimagemsoを使用することは可能でしょうか?
imagemsoの名称からfaceidに変換することは可能でしょうか?
もしくはmsoBarPopupでimagemsoを使用することは可能でしょうか?
135デフォルトの名無しさん (ワッチョイ 27ce-BXkI)
2020/07/02(木) 06:28:30.74ID:PEAIWqln0 >>133
選んだセルをどうしたいかによるけど、オートフィルかけて選択とか
選んだセルをどうしたいかによるけど、オートフィルかけて選択とか
136デフォルトの名無しさん (アウアウエー Sa82-qC4h)
2020/07/02(木) 08:20:19.52ID:yX39WODNa 他人の作ったコードはなぜ読む気がしないのか
137デフォルトの名無しさん (アウアウウー Sacf-z1wt)
2020/07/02(木) 10:30:47.89ID:KAImZ3Owa 読む必要はないからな
138デフォルトの名無しさん (ワッチョイ 1e8e-0gyK)
2020/07/02(木) 12:31:17.08ID:cWLbwDw40 馬鹿の特徴
「教えて」「助けて」
で始まる書き込みをする
「教えて」「助けて」
で始まる書き込みをする
139デフォルトの名無しさん (ワッチョイ 27ea-c9XW)
2020/07/02(木) 13:06:37.09ID:vmiMC9VK0■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「日本はパンダがいなくなる状況に直面するだろう」 中国メディア、専門家の見方伝える [♪♪♪★]
- ネット殺到「高市総理の責任」「完全に高市リスク」「負けるな」中国が水産物輸入停止→流石に総理批判の声も「どう責任取る?」 ★11 [樽悶★]
- 外国人の犯罪率は日本人の1.72倍 警察庁が短期滞在者除いた数字を参院内閣委で答弁★2 [七波羅探題★]
- 【日中対立】 朝日新聞のタイトル修正が中国逆ギレの火種か SNSで批判相次ぐ [♪♪♪★]
- 朝日新聞のタイトル修正が中国逆ギレの火種か SNSで批判相次ぐ★2 [♪♪♪★]
- ひろゆき氏 高市首相の台湾有事発言 「日本が得たものあまりない。経済的なマイナスは明確に存在」 [冬月記者★]
- 人類「猟友会がクマ駆除要請の拒否したら銃取り上げたらいい。何のために銃持たせてやってるんだ?積丹の気持ちは理解できる」 [932029429]
- ワチが一番キライなスポーツ1つ当ててみ
- (*´ω`*)おはヨーグルト
- 16のヒッキー女に構って
- ネトウヨ「レアアースは日本でも採れるから輸入しなくてもOK!」 なお精製コストがバカ高く有害物質が大量に出ることは全く知らない模様 [314039747]
- 【すべてが】𝗮𝗺͜𝗮͉𝘇𝗼𝗻ブラックフライデーSALE総合【いいだろ!】 [194819832]
