VBAを使った質問ならなんでもござれ
本来の対象であるオフィスアプリを操作する以外の話もOK
ゲーム作り、Webアクセス、外部アプリの操作
COM(ActiveX)、Win32API、.NET Framework、DirectXなどなど
VBAで実行するものであればなんでも質問してください
VBAを開発環境としていろいろ作っちゃいましょう
前スレ
VBAなんでも質問スレ Part2
https://mevius.5ch.net/test/read.cgi/tech/1432173164/
VBAなんでも質問スレ
http://peace.2ch.net/test/read.cgi/tech/1342087380/
探検
VBAなんでも質問スレ Part3
2021/09/09(木) 19:46:21.53ID:zfiF925t
2021/09/09(木) 19:50:57.85ID:zfiF925t
関連スレ
Excel VBA 質問スレ Part72
https://mevius.5ch.net/test/read.cgi/tech/1626565335/
Access VBA 質問スレ Part2
https://mevius.5ch.net/test/read.cgi/tech/1544620479/
古代VBプログラマ質問スレ(Ver.6.0 まで) part65 [転載禁止]c2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1440930335/
Excel総合相談所 145
https://mevius.5ch.net/test/read.cgi/bsoft/1624085733/
Excel VBA 質問スレ Part72
https://mevius.5ch.net/test/read.cgi/tech/1626565335/
Access VBA 質問スレ Part2
https://mevius.5ch.net/test/read.cgi/tech/1544620479/
古代VBプログラマ質問スレ(Ver.6.0 まで) part65 [転載禁止]c2ch.net
https://mevius.5ch.net/test/read.cgi/tech/1440930335/
Excel総合相談所 145
https://mevius.5ch.net/test/read.cgi/bsoft/1624085733/
2021/09/09(木) 19:51:44.70ID:zfiF925t
前スレ落ちたままだったから建てた
2021/09/17(金) 20:28:55.22ID:HsaXC1Am
プロシージャ終わったあとに変数の中身を保持するにはどうすればいいですか
ボタンとかで変数を後で呼び出したいです
ボタンとかで変数を後で呼び出したいです
2021/09/17(金) 20:58:48.95ID:MiWjDaSf
シートのセルに値を書き込んでおく
2021/09/18(土) 00:17:54.33ID:y6o4y4/H
7デフォルトの名無しさん
2021/10/20(水) 22:37:31.96ID:mCILNp7G 超初心者です
すみません、他スレでもきいたのですが
以下の対応をさせたいです
@シートを支店分だけ増やす
Aシート名をそれぞれ「支店一覧」A2〜A18の支店名にする
B作成したシートのB5に支店名を入れる
C作成したシートの表のA列が"0"になっている行を削除する
D作成したシートのオートフィルタを解除する
以下のものではエラーになりますが、どこが悪いのでしょうか
Sub シート作成
Dim 支店名 As Range
For Each 名前 In Worksheets("支店一覧").Range("A2:A18")
Worksheets("原本").Copy After:=Worksheets(Worksheets.Count)
With ActiveSheet
.Name = 支店名.Value
.Range("B5") = 支店名.Value
End With
Range("B3").AutoFilter 1, "0"
With Range("B3").CurrentRegion.Offset(1, 0)
.Resize(.Rows.Count - 1).EntireRow.Delete
Range("B3").AutoFilter
End With
Next 支店名
すみません、他スレでもきいたのですが
以下の対応をさせたいです
@シートを支店分だけ増やす
Aシート名をそれぞれ「支店一覧」A2〜A18の支店名にする
B作成したシートのB5に支店名を入れる
C作成したシートの表のA列が"0"になっている行を削除する
D作成したシートのオートフィルタを解除する
以下のものではエラーになりますが、どこが悪いのでしょうか
Sub シート作成
Dim 支店名 As Range
For Each 名前 In Worksheets("支店一覧").Range("A2:A18")
Worksheets("原本").Copy After:=Worksheets(Worksheets.Count)
With ActiveSheet
.Name = 支店名.Value
.Range("B5") = 支店名.Value
End With
Range("B3").AutoFilter 1, "0"
With Range("B3").CurrentRegion.Offset(1, 0)
.Resize(.Rows.Count - 1).EntireRow.Delete
Range("B3").AutoFilter
End With
Next 支店名
8デフォルトの名無しさん
2021/10/20(水) 22:49:26.57ID:mCILNp7G C作成したシートの表のB列が"0"になっている行を削除する
の誤りです
コードの3行目は
For Each 支店名 In Worksheets("支店一覧").Range("A2:A18")
の誤りです
の誤りです
コードの3行目は
For Each 支店名 In Worksheets("支店一覧").Range("A2:A18")
の誤りです
2021/10/21(木) 01:14:54.35ID:1DXeXJeG
107
2021/10/26(火) 13:12:31.54ID:NeMLM07o2021/10/26(火) 18:21:16.44ID:oxO6XS7Z
1211
2021/10/26(火) 18:27:36.54ID:oxO6XS7Z 簡単なデバッグとしてら、まずはwithステートメントを全てコメントアウトして、動くかどうか。
あとは支店名のところをシンプルにアルファベットのAからQとかに変えてみる。
あとは支店名のところをシンプルにアルファベットのAからQとかに変えてみる。
2021/12/16(木) 14:58:51.82ID:6msdMQ6g
reportのインスタンスを作成して、property Letでprivate変数に配列を渡した後に、docmd.openreportを行うと変数が全部初期化されるのな。
reportに表示させるものを変数で与えるのは不可能なのかなあ?
やっぱり、クエリとか一時的なテープルが必要なのかな?Openargsで出来そうだけど、数が多いと非現実的だよね。
reportに表示させるものを変数で与えるのは不可能なのかなあ?
やっぱり、クエリとか一時的なテープルが必要なのかな?Openargsで出来そうだけど、数が多いと非現実的だよね。
1413
2021/12/16(木) 15:02:05.17ID:6msdMQ6g グローバル変数でやるべきかなあ?でも変なときに変数の寿命が来るから不安だよなあ。
15デフォルトの名無しさん
2022/02/13(日) 16:56:03.94ID:eQTVIxP9 word vbaについて質問です。
本文↓
0001234567891
コード↓
Sub findText()
With Selection.Find
.Text = "1"
Do While .Execute
Selection.Comments.Add Range:=Selection.Range
Selection.TypeText Text:="あ"
Loop
End With
End Sub
特定の文字列を検索し、コメントを追加するマクロを作っているのですが、
コードを実行すると、本文1個目の「1」にコメントがついた後,
2ループ目の「Selection.Comments.〜」で「5935 コメント、脚注および文末脚注は、本文にのみ追加できます。」というエラーが出ます。
コメント入力時にカーソルが本文外に出るのが原因かと思い、
ループの最後にカーソルを本文中(コメントを付けたワードの直後)に戻すようにしたいのですが
どのように記述したらいいのでしょうか?
本文↓
0001234567891
コード↓
Sub findText()
With Selection.Find
.Text = "1"
Do While .Execute
Selection.Comments.Add Range:=Selection.Range
Selection.TypeText Text:="あ"
Loop
End With
End Sub
特定の文字列を検索し、コメントを追加するマクロを作っているのですが、
コードを実行すると、本文1個目の「1」にコメントがついた後,
2ループ目の「Selection.Comments.〜」で「5935 コメント、脚注および文末脚注は、本文にのみ追加できます。」というエラーが出ます。
コメント入力時にカーソルが本文外に出るのが原因かと思い、
ループの最後にカーソルを本文中(コメントを付けたワードの直後)に戻すようにしたいのですが
どのように記述したらいいのでしょうか?
2022/03/01(火) 18:52:06.00ID:gFYHZAxx
Excel VBAで質問です
現在開いているシートにマクロボタンを作り、実行させると…
現在シートのB列に検索値
別のシート(ABC)のB列の5行目〜400行目までを検索して一致したセル番号が欲しいのですが
For cnt=1 To 10 samsu(cnt)=WorksheetFunction.Match(Cells(cnt,1),Worksheets(”ABC”).Range(Cells(5,1),Cells(400,1)),0)
…
next
このMatch関数の正しい書き方を教えてもらいたいのですが。
現在開いているシートにマクロボタンを作り、実行させると…
現在シートのB列に検索値
別のシート(ABC)のB列の5行目〜400行目までを検索して一致したセル番号が欲しいのですが
For cnt=1 To 10 samsu(cnt)=WorksheetFunction.Match(Cells(cnt,1),Worksheets(”ABC”).Range(Cells(5,1),Cells(400,1)),0)
…
next
このMatch関数の正しい書き方を教えてもらいたいのですが。
2022/03/01(火) 20:16:20.95ID:AZ2KEwsI
B列ってcells(?,1)で合ってる?
もうcells(?,"B")しか使わないから忘れた
もうcells(?,"B")しか使わないから忘れた
2022/03/01(火) 22:26:50.78ID:gFYHZAxx
2022/03/12(土) 08:01:57.51ID:rBVEQH16
質問です。
アクセスから書き込みパスワード付きエクセルファイルに保存するためにエクスポートします。
当然、単純にエクスポートするコードを書いたらエラーで止まります。
これが5年くらい前
最近、この手順を自動化するために
エクセルファイル側の書き込みパスワードを解除し、保存、
アクセスからエクスポートと、いうコードを書きました。
パスワードの再設定をしていないのに正常にエクスポートされ、
書き込みパスワードも正しくかかっています。
パスワード絡みの動作がおかしい気がしますが
心当たりはありますでしょうか?
アクセスから書き込みパスワード付きエクセルファイルに保存するためにエクスポートします。
当然、単純にエクスポートするコードを書いたらエラーで止まります。
これが5年くらい前
最近、この手順を自動化するために
エクセルファイル側の書き込みパスワードを解除し、保存、
アクセスからエクスポートと、いうコードを書きました。
パスワードの再設定をしていないのに正常にエクスポートされ、
書き込みパスワードも正しくかかっています。
パスワード絡みの動作がおかしい気がしますが
心当たりはありますでしょうか?
2022/03/12(土) 08:09:55.30ID:rBVEQH16
WiNdowsを10にかえたことも影響あるかもしれま追記
せん。
せん。
2119
2022/04/09(土) 10:45:51.24ID:LIGVQVYE ウインドウズの更新かかったらさらに挙動が変わりましたw
質問の件ですが
もともとファイル内容の変更ではなく
新規作成で問題無い事に気づいたので
パスワードなしマクロファイルを作成→
マクロファイルからパスワード付きで新規(上書き)保存
と、二段階にしました。
質問の件ですが
もともとファイル内容の変更ではなく
新規作成で問題無い事に気づいたので
パスワードなしマクロファイルを作成→
マクロファイルからパスワード付きで新規(上書き)保存
と、二段階にしました。
2022/05/01(日) 14:19:41.70ID:ly+hCRMC
2日前まで動いていた自作のマクロが、昨日からウィルスと誤検出されて実行できなくなってしまいました
内容はseleniumでchromeを操作して特定のページを表示させるだけの比較的単純な物です
Windows Defenderの定義と、chromeとseleniumと.netは最新にしましたが改善されません
どうしたら誤検出だとシステムに教えることができるのでしょうか?
内容はseleniumでchromeを操作して特定のページを表示させるだけの比較的単純な物です
Windows Defenderの定義と、chromeとseleniumと.netは最新にしましたが改善されません
どうしたら誤検出だとシステムに教えることができるのでしょうか?
2022/05/01(日) 14:58:43.07ID:GoET9IZ/
署名
2022/05/01(日) 19:48:46.19ID:ly+hCRMC
デジタル証明書を作って読み込ませたら実行できるようになりました
ありがとうございました
それにしても、こんなに簡単に証明書を作れてしまうのなら、あんまり意味がない気もしますね
ありがとうございました
それにしても、こんなに簡単に証明書を作れてしまうのなら、あんまり意味がない気もしますね
2022/05/01(日) 19:50:53.15ID:ly+hCRMC
とりあえず実行はできましたが、証明書を入れたら起動がとても遅くなってしまいました
誤検出だと知らせる方法もお願いします
誤検出だと知らせる方法もお願いします
26デフォルトの名無しさん
2022/05/06(金) 17:09:58.99ID:n/glZxQ+ Excel VBAの質問です。
初心者で申し訳ありません。
yahoo知恵袋にベストアンサーにあったものなのです。
Sub Sample1()
Dim dt As Date
dt = Range("D11").Value
Range("D12").Value = GetNENDO(dt, 3)
MsgBox dt & " は " & GetNENDO(dt, 3) & " 年度です"
End Sub
Function GetNENDO(dt, x)
GetNENDO = Year(DateAdd("m", -x, dt))
End Function
Range("D12").Value = GetNENDO(dt, 3)の(dt, 3)が理解できません。
またYear(DateAdd("m", -x, dt))の-xとはどういうことでしょうか。
抽象的ですみません
初心者で申し訳ありません。
yahoo知恵袋にベストアンサーにあったものなのです。
Sub Sample1()
Dim dt As Date
dt = Range("D11").Value
Range("D12").Value = GetNENDO(dt, 3)
MsgBox dt & " は " & GetNENDO(dt, 3) & " 年度です"
End Sub
Function GetNENDO(dt, x)
GetNENDO = Year(DateAdd("m", -x, dt))
End Function
Range("D12").Value = GetNENDO(dt, 3)の(dt, 3)が理解できません。
またYear(DateAdd("m", -x, dt))の-xとはどういうことでしょうか。
抽象的ですみません
2022/05/06(金) 18:24:20.55ID:+CQ2xbTl
自作のファンクションでGetNENDOというのを作っていて、
このファンクションは引数に指定された日付dtに対してxか月前(-x)の日付の年を返却するみたいだね。
今回はセルD11に入っている日付の3か月前の年をD12に設定しているような動作だと思う
例)D11に「2022/2/3」が入っていればD12には「2021」が設定される
このファンクションは引数に指定された日付dtに対してxか月前(-x)の日付の年を返却するみたいだね。
今回はセルD11に入っている日付の3か月前の年をD12に設定しているような動作だと思う
例)D11に「2022/2/3」が入っていればD12には「2021」が設定される
2022/05/06(金) 19:49:29.47ID:vBpX51Ga
知恵袋さんは回答するだけしといて解説が無いから初心者にはキツイよ
2022/05/06(金) 22:15:14.38ID:P6mnwuPA
カレンダー年から会計年に変換するVBAのようだが
こんなのワークシート関数で十分なのに有り難がって使う理由が分からんよ
こんなのワークシート関数で十分なのに有り難がって使う理由が分からんよ
2022/05/07(土) 05:50:57.56ID:WpJq4eDb
>>29
プログラミング全般に言えることだけど、単なる数式と比較して、関数化して名前が付けてあると、他人が見た時に用途や動作がわかりやすくなるという大きなメリットがある
プログラミング全般に言えることだけど、単なる数式と比較して、関数化して名前が付けてあると、他人が見た時に用途や動作がわかりやすくなるという大きなメリットがある
2022/05/07(土) 23:47:50.28ID:xbH87CjA
>>29
それ言い出したら、「全部0100010101000」で表現できるのにいちいちアセンブラとかありがたがって使う意味わからん、まで遡る。
抽象化は大事だよ。
あと、地の文に「有難がって」みたいなネガティブな印象の語を持ってきて、言いたいことを暗に伝えるのはやめたほうがいいと思う。
ゲスゴミがよく使うんだけど、「・・・などと訳のわからないことを言っており」とか、「行き過ぎた○○の是正を」とかの表現を使って責任逃れしつつ人や物にレッテルを貼る卑怯者に見える。
俺がゲスゴミって表現使ったのことでなんとなく俺のスタンス伝わるだろ?そういう類。
それ言い出したら、「全部0100010101000」で表現できるのにいちいちアセンブラとかありがたがって使う意味わからん、まで遡る。
抽象化は大事だよ。
あと、地の文に「有難がって」みたいなネガティブな印象の語を持ってきて、言いたいことを暗に伝えるのはやめたほうがいいと思う。
ゲスゴミがよく使うんだけど、「・・・などと訳のわからないことを言っており」とか、「行き過ぎた○○の是正を」とかの表現を使って責任逃れしつつ人や物にレッテルを貼る卑怯者に見える。
俺がゲスゴミって表現使ったのことでなんとなく俺のスタンス伝わるだろ?そういう類。
2022/05/08(日) 10:19:01.14ID:bTqMUGkM
>>29
ライブラリとか作ったり使ったりしたことなさそう
ライブラリとか作ったり使ったりしたことなさそう
2022/05/08(日) 10:51:36.83ID:ZAasayov
>>26にある知恵遅れ袋の回答者が来てるようだな
2022/05/08(日) 11:57:36.38ID:wZiRxxsO
>>26
GetNENDはなんでわざわざ引数2つにしてるんだろうな
年度を求めるなら暦年との差は必ず3な訳で、
2つめの引数に3以外を指定するならGetNENDOって名前が不適切
>>33
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1063327550
これだろ?
質問の要件が「エクセルのVBAを使って」なんだからおかしくはない
GetNENDはなんでわざわざ引数2つにしてるんだろうな
年度を求めるなら暦年との差は必ず3な訳で、
2つめの引数に3以外を指定するならGetNENDOって名前が不適切
>>33
https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1063327550
これだろ?
質問の要件が「エクセルのVBAを使って」なんだからおかしくはない
2022/05/08(日) 13:10:38.22ID:spHVpjBs
>>34
年度が4月始まりじゃない場面は業界によって色々ある
年度が4月始まりじゃない場面は業界によって色々ある
2022/05/08(日) 14:40:26.99ID:bTqMUGkM
2022/05/08(日) 15:13:04.89ID:spHVpjBs
2022/05/10(火) 02:24:40.53ID:vf3aVjoi
知恵袋をたまに見てるとさ、無言で変な構文やなんかのサイトを張り付けて去っていく回答者いるけど、なんか不気味じゃない??
2022/05/10(火) 08:22:39.72ID:YKOd6nzx
事業年度や会計年度は主体・組織によって全く異なる。
会社だと3月期決算の会社は4月始まりだが、
3月期決算でない会社は世の中にたくさんある。
学校年度だって国によって違う。
4月始まりの日本は少数派。
会社だと3月期決算の会社は4月始まりだが、
3月期決算でない会社は世の中にたくさんある。
学校年度だって国によって違う。
4月始まりの日本は少数派。
2022/05/10(火) 09:44:48.97ID:rTLlCkMy
自転車置き場の議論
2022/05/10(火) 09:47:10.09ID:rTLlCkMy
年度が4月始まりじゃないならなおさら二つ目の引数は馬鹿丸出しだろ
普通年度始まりの月とかにしないか?
普通年度始まりの月とかにしないか?
レスを投稿する
ニュース
- 小野田紀美・経済安保担当相「何か気に入らないことがあればすぐに経済的威圧をする国への依存はリスク」 ★2 [Hitzeschleier★]
- 日本行き空路49万件キャンセル 中国自粛呼びかけ 日本行きチケット予約の約32%に相当 ★2 [ぐれ★]
- 【中国局長】両国関係に「深刻な影響」 首相発言の撤回要求 [蚤の市★]
- 外務省局長は無言で厳しい表情…日中の高官協議終了か 高市首相“台湾”発言で中国が強硬対応 発言撤回求めたか…★3 [BFU★]
- 【インバウンド】中国人観光客の日本での消費額は年間約2兆円超…中国政府は公務員の出張取り消し [1ゲットロボ★]
- 【維新】吉村知事「中国人観光客だけに頼るビジネスモデル変えていかないといけない」「高市総理の発言は撤回する必要はない」 [Hitzeschleier★]
- 【高市朗報】 日本政府「一昨年は1300億円。去年も防衛費が1100億円余ったw」 日本の防衛費は充分足りてる事が判明。増やす必要無し [485983549]
- 高市早苗「支持者の理解を得られないので台湾発言を撤回できない」 [931948549]
- 【実況】博衣こよりのえちえち歌枠🧪
- 【高市速報】日本人の3割「中国への武力行使に踏み切る必要がある」ANN世論調査 [931948549]
- 外務省局長、よくわからないまま帰国へ [834922174]
- 【速報】51歳まで自衛隊になれるように法改正ww [347751896]
