Excel VBA 質問スレ Part73

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 4668-xJJl)
垢版 |
2021/09/13(月) 07:29:59.47ID:GNx0xRRz0
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ

ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ

※前スレ
Excel VBA 質問スレ Part70
https://mevius.5ch.net/test/read.cgi/tech/1616072923/
Excel VBA 質問スレ Part71
https://mevius.5ch.net/test/read.cgi/tech/1621914481/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/10/08(金) 02:32:08.41ID:KEaimES90
人がやめた後に職場がどうなるかはその職場の責任者が決めるんじゃね
下っ端が気にすることじゃない
2021/10/08(金) 04:11:36.40ID:vcejz6/Ud
市販アプリでも、天才的な開発者が辞めて、会社もろともアプリもダメになって終わったパターンをいくつも見てきた
2021/10/08(金) 07:11:46.26ID:GXvDbP/z0
>>331
>>333
なるほどねありがとう
335デフォルトの名無しさん (アウアウウー Sa2f-YkK2)
垢版 |
2021/10/08(金) 08:09:49.53ID:Am1Ugnvua
>>326
>>327
丁寧にありがとう
色々試してみます
336デフォルトの名無しさん (ワッチョイ 8a05-GJBa)
垢版 |
2021/10/08(金) 09:40:27.58ID:JQJjKarL0
CPU使用率が大きかったのでダメもとで開いて修復を実行したら
かなり軽くなるのな、知らんかった
これ定期的にやったほうがいいのか?
VBAのコードを一旦退避させるのが面倒だが...
2021/10/08(金) 17:00:42.44ID:EVmjGNOc0
>>336
詳しく
2021/10/08(金) 22:11:41.59ID:x7uCSItJ0
属人的にならない仕組みで効率化できればいいんだが、頭の中が古き良きな方々が幅を利かせる日本ではなかなか難しい
2021/10/09(土) 01:49:50.17ID:98oBjVW70
自分が初めてVBAを使って解決した時点で、他にVBAを使う人がいないんだから属人化しないわけがないと思うけどな
しかもVBAってプログラミング言語の中では非常に初心者向けなわけで、
誰もVBAで組めない=プログラミングに全員疎いのはほぼ決定なんだから尚更さ

VBAを共通知識にしたいっていうのは、
最初にプログラミングっていう一般的には取っ付き難い物に興味を持たせるっていう途轍もなく大きなハードルを超える必要があって、
それは「興味がある生徒に教える」プログラミング講師以上に難しいと思う

相当な根気が必要だと思うよ
2021/10/09(土) 02:16:01.12ID:2HXwYm4Z0
そもそも人に仕事が割り振られた段階で属人化されてるわけで
たんに次の人が困って終わりだよ
2021/10/09(土) 02:30:43.66ID:98oBjVW70
確かに。
レス漁ってみたが、
ここでいう「属人化で困る」は「他の人にはできないVBAというテクニックを持つオレスゲー」を単にオブラートに包んだだけっぽい感じがするな
2021/10/09(土) 02:49:32.47ID:0Qsp0NFP0
マクロの効率化ガン無視で社員の手が開いた分だけ仕事を割り振る上司がいるらしいけど
その時点である意味属人化してるよね
その仕事引き継ぐやつ
まずさばき切れないだろ
2021/10/09(土) 04:49:21.33ID:UCXjyRPA0
うちの職場ではほとんどの人がマクロできるけど、新人に自信持たせるためにわざわざ気を使って
「君マクロできるなんて凄いね〜」っておだててるのに同調するのが正直めんどくさい
2021/10/09(土) 04:50:24.64ID:0Qsp0NFP0
そういうとこは給料高そうで羨ましい
2021/10/09(土) 05:01:41.26ID:UCXjyRPA0
>>344
給料は個人の能力に比例します
2021/10/09(土) 08:10:48.77ID:KDe6uexsd
新人の育成は面倒だけど将来的に必要なことだからなあ
褒めた方が上達が早いってのも科学的に証明されつつあるし、そういうもんだからあきらめろ
2021/10/09(土) 08:19:40.75ID:0Qsp0NFP0
全員VBAできるとか絶対給料高いとこだろ
うちのところなんて一人しかいないよ
しかも残りは関数すらまともにあつない
2021/10/09(土) 08:21:07.29ID:0Qsp0NFP0
おかげで効率がすげー悪い
基本は専用ソフト扱うからエクセルは必須ではないとはいえ
それでもエクセルやVBAやれるのとやれないのとでは効率が雲泥の差
2021/10/09(土) 08:31:06.39ID:HlWFX8NcM
選民思想ここに極まれり
2021/10/09(土) 08:33:14.89ID:qDyUb0P50
研修とか外部の自宅学習プログラムでもやったら?
費用は会社持ち、報奨金も少しは付けて
2021/10/09(土) 08:37:41.66ID:0Qsp0NFP0
そんな金あったら給料上げてレベルの高い人材雇うか
もうちょっとマシな専用ソフト使ってる
金をケチったせいでオンボロ専用ソフト使わせれて
専用ソフトじゃフォローしきれないのでエクセル活用しないと行けない羽目になってる
2021/10/09(土) 08:57:09.18ID:g5OHjBNSd
会社は社員に楽させたいと思ってるわけじゃない、という大前提
人材なんて時間いっぱい、めいっぱい働かせてナンボ
安いアプリを買って、あとは社員にやらせて、それで回ってるなら何も問題ないんだよ
2021/10/09(土) 09:27:27.16ID:0Qsp0NFP0
高い金出して高価な専用ソフト使うくらいなら
多少残業代だしてもいいからボロソフト使ったほうが安上がりだからな
2021/10/09(土) 09:42:15.79ID:58+qPlR+0
エクセルはマス目状に文章を入力できるソフトぐらいにしか思ってない人もいるしなあ
2021/10/09(土) 15:35:55.10ID:8vFa8kgUd
>>354
ウチの会社の事務方ほとんどそれだわ
セルの結合しまくって数値手入力とか当たり前
2021/10/09(土) 20:10:49.92ID:J89rndhPa
セル結合せずにせめて広げろや、とは思う
2021/10/09(土) 20:26:49.65ID:XLSjDb/pM
セル結合とvlookupをディスってようやくエクセル使いとして一人前
2021/10/09(土) 20:30:33.16ID:0Qsp0NFP0
べつにvlookupは悪くないだろ俺は使いたくないけど
2021/10/09(土) 20:58:23.98ID:ZXG2HktNM
>俺は使いたくないけど
さりげないアピール
2021/10/09(土) 20:59:19.46ID:ZXG2HktNM
>俺は使いたくないけど
さりげなさを装ったアピール
2021/10/09(土) 21:05:39.47ID:LYlfiTybM
VLOOKUPディスってるのは情弱だろ
2016からめっちゃ高速化されてるから数万行ぐらいなら普通に使える
2021/10/09(土) 21:11:18.66ID:0Qsp0NFP0
高速化とかどうでも良い
左端しかデータが使えないのが不便
無駄な検索用データが全部左端に固まる
2021/10/10(日) 06:43:03.77ID:LB6rENWtp
個人的に使いたい使いたくないは仕方がない
適材適所で最適解を出す手段に自ら縛りを掛けているだけだから
それで他の人に迷惑掛けている訳でなければとやかく言う筋合いでも無いしな
2021/10/10(日) 08:15:02.57ID:AQQzB40DM
>>362
XLOOKUP使え
うちの環境だとまだ使えないけど... orz
2021/10/10(日) 10:34:27.64ID:iKRuQHQv0
index matchでええやん
2021/10/10(日) 15:09:30.75ID:2USb7I2AM
MATCHはいちいちIFERROR組み込まなきゃいけないから式が冗長になりがちであんまり好きくない
2021/10/10(日) 15:39:33.06ID:wqZqaK12d
そもそもスピードは求めてない
元データを1日に何回もアップデートするわけじゃないし
2021/10/10(日) 15:46:10.06ID:iKRuQHQv0
>>366は何使ってんの?
2021/10/10(日) 16:04:08.10ID:2USb7I2AM
>>368
あんまり関数でデータベース検索かけたくないけどかけなきゃいけないならXLOOKUP、自分以外が使う可能性があるならVLOOKUPかHLOOKUPかなぁ
状況に合わないならMATCHも使うけど使用優先度は低め

VBAにやらせる時も中に確実に存在する場合でなければRange型にFind使って放り込む事が多いかも
Is Nothingで見つからない場合でも処理が止まらずに弾けるし
2021/10/10(日) 16:23:38.63ID:iKRuQHQv0
あごめん>>364かと思ってた

処理が止まらずにってのすごい大事だよなぁ
2021/10/10(日) 16:30:18.62ID:6uQRu7X1M
>>370
364だけどVLOOKUP使えるならVLOOKUP
そうでなきゃINDEX+MATCH
大抵そうじゃないの?
2021/10/10(日) 16:51:12.87ID:JSJMRLhD0
ある行を内容の変更は自由にできるけど削除できないようにすることはできますか?
2021/10/10(日) 17:26:53.27ID:rp73utgy0
それ、ここでする質問?
374デフォルトの名無しさん (ワッチョイ 0668-Mxyx)
垢版 |
2021/10/10(日) 17:53:50.05ID:19DRUExW0
>>372
削除を感知して、
https://kirinote.com/excelvba-row-event/

削除されていれば
appliction.undo
ってのはどうだろうか
2021/10/10(日) 18:04:32.90ID:u+pPz2Uo0
ゴミみたいな回答ばかり
376デフォルトの名無しさん (ワッチョイ 9eda-h0Ad)
垢版 |
2021/10/10(日) 19:05:42.11ID:eL4HRu610
じゃあ、ゴミじゃない回答よろ
2021/10/10(日) 19:35:34.55ID:rFwRYXWV0
「削除できないように」というのが:
・「セルや行の削除をできないようにしたい」→シートの保護で対処
・「値の変更はできるが消去(空欄に)できないようにしたい」→入力規則で対処
2021/10/10(日) 20:12:04.54ID:eL4HRu610
対処の方法がわからないのかと思ったら、対処する方法があるのかどうかの質問だったのかw
2021/10/11(月) 00:26:21.39ID:Z2LLk70Q0
>>377
シートの保護で削除不可を選んでも全ての行が削除不可になること,またセルの内容変更もできなくなるので希望に合いません.
374さんのやり方をVBA画面をで書くしか無いですかね
2021/10/11(月) 14:09:59.80ID:7nZn8gcC0
>>379
保護する前に行選択しておけばいいやん
任意の場所だけ編集不可にできるよ
2021/10/11(月) 14:59:32.76ID:Z2LLk70Q0
>>380


> 任意の場所だけ編集不可にできるよ
編集不可ではなくって、編集可で削除不可にしたいんです。
2021/10/11(月) 18:57:29.54ID:nQqo0+vnM
空白に編集する場合とかどう取り扱うつもりなんだろう
2021/10/11(月) 20:49:58.25ID:SLAXBehE0
クビか配置転換したほうがよいかと
384デフォルトの名無しさん (ワッチョイ 0b8e-o/se)
垢版 |
2021/10/11(月) 21:18:23.92ID:oro4FUng0
馬鹿でもある程度作れてしまうからダメなんだよな
2021/10/12(火) 18:51:44.09ID:F8L1eENx0
それを求める環境が悪い
2021/10/14(木) 18:44:35.26ID:FbYeSmKT0
空白は削除じゃないんじゃね
2021/10/14(木) 19:05:30.78ID:DEjpZ/5cr
メーカー開発設計だけど実験データ処理とかで
なれないながら頑張ってvba使ってるけど
試行錯誤で調べながらだからあんまりシート使ってるときと比べて効率化できてる気がしない…
でもシートでチマチマするよりは知的労働してる気がするし
いつかのペイオフを期待するわ
2021/10/14(木) 20:42:17.77ID:BHqqoV+20
あるレベルを超えると突然やりたいことはこうやりゃいいじゃんってなってバリバリ書けるようになる
389デフォルトの名無しさん (ワッチョイ 0668-Mxyx)
垢版 |
2021/10/14(木) 22:26:04.22ID:FxTzsGq40
set覚えてオブジェクトの概念覚えてイベントを理解してしばらくするとほぼ全ての場面で対応できるようになる
2021/10/15(金) 06:17:54.01ID:YCIon6in0
色々覚えて余計な知識が付いてきて、
これはもっと綺麗に書けるんじゃないか?っていう欲が出て進まなくなる事が増えたんだけどどうすりゃいいのか
今までは明らかに冗長で読みづらいコードが多かったけど、生産性で見れば高かったように思う

特にプログラミング自体に興味が出てきて他の言語の記事も見るようになって、
そこで得た知識をVBAで無理に再現しようとしてドツボに嵌る事態も多いように感じる
2021/10/15(金) 07:30:19.61ID:xvvRRo/+0
>>390
まず単一責任原則に沿って作るといいよ。
つらつらとコードを一直線に書くんじゃなくて、
役割に合わせてメソッドや関数を作って
それを部品として組み立てて行くイメージ。

後、他言語をやっていてクラスや
インターフェースの概念を理解しているなら
行き当たりばったりで最初からコードを
書くんじゃなくてどういう構成で組むかを
一度図に書いてイメージしてから作るといいよ。
そのためにもUMLとかもかじっておくと
いいんじゃないかな。

後は暇なときにデザインパターンの本でも
読んでおいて使えそうなのだけ
使えばいいんじゃないかな。

ただ、VBAでは自分一人で使うんであれば
それでいいけど、後々人が見たり手を入れたり
することを考えると、やり過ぎると
そもそもその辺の概念を理解していない
人が多いからね。自分以外誰も触れない
オナニーコードの完成だよ。
その辺は気を付けないとね。
392デフォルトの名無しさん (ワッチョイ ef68-VjlT)
垢版 |
2021/10/15(金) 07:53:52.36ID:i1GdH9Fr0
>>390
字の練習と同じ
納得できるまで、何度も綺麗に書き直せば良い
その内、早く綺麗に掛けるようになる
「もう少し綺麗に書けそうだけど時間かかるから諦めよう」の判断も出来るようになる

>>391とは逆だけど、vbaの場合は関数やモジュールはあまり分けなくても大丈夫だよ
他の言語だと10行超えたら別モジュール、なんて言われる事もあるけど
vbaだと単一モジュール・単一関数で終わる方が見やすい事も
2021/10/15(金) 08:56:32.98ID:Ob8xTIA6M
メソッドが3つ以上にできそうなときはクラスを検討する
394デフォルトの名無しさん (ラクッペペ MM7f-xEoX)
垢版 |
2021/10/15(金) 09:22:10.96ID:Y66b/sjXM
美しさより速さだよ
最初の頃は両立するが(無駄なSelectなど)
次第によ醜くなっていく
395デフォルトの名無しさん (エムゾネ FFbf-mxW8)
垢版 |
2021/10/15(金) 10:10:42.08ID:Sjupi756F
もう3年くらいExcel使ってないけど全然困らないωωω
2021/10/15(金) 11:34:26.87ID:r1bpZsgJ0
ふーん
2021/10/15(金) 20:36:17.72ID:WLz9ti2OM
>>395
なんでこのスレに居るの?
2021/10/15(金) 21:42:47.27ID:YCIon6in0
>>391,392
ありがとう

分けた方がスッキリするんだけど、
分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
そういう時に「どこまで分けるか」っていう塩梅はどういう基準で決めてる?
2021/10/15(金) 22:02:32.86ID:xvvRRo/+0
>>398
役割。
モジュールもメソッドも全てに役割分担を持たせてキチンと仕舞うべき場所に仕舞っておく。
だからその役割を行う為なら100行になろうが1000行になろうがそのメソッドに記載する。

何を持ってしてひとつの役割とするかは作る人のセンスに掛かってくるから場数をこなして慣れるしかないかな。
2021/10/15(金) 22:06:51.27ID:xdjJa8Ad0
>>398
変数や関数名や引数である程度分かるようにする
それでも迷うようならコメント付ける
401デフォルトの名無しさん (ワッチョイ ab5f-UsRe)
垢版 |
2021/10/16(土) 13:55:14.29ID:Hx8OP0An0
>>398
> 分けすぎると逆に関数があっちこっちに分散してどれが何に使われているのか分かり辛くなる
関数にカーソル合わせて「Shift+F2」で定義箇所に飛べるよ
https://www.wordvbalab.com/code/2925/

まあ言語自体も開発環境も貧弱すぎるからまとめたくなっちゃう感覚はわかるけど
402デフォルトの名無しさん (ワッチョイ 6b01-Avck)
垢版 |
2021/10/16(土) 16:39:05.71ID:EZGI4ZK10
調べてもわからないのでお聞きしたいです

下の処理でtest3まで処理は正常に行われるんですが
mainに戻ったときに型の不一致でエラーが出て止まってしまいます。

Dim WS As Worksheet

Sub main()
Call test3(TEMP_SHEET)
End Sub

Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
Set WS = TEMP_SHEET
End Function

Function test3() As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function
2021/10/16(土) 16:51:56.90ID:a6cW1Kja0
test3()なのにcallで引数渡そうとしてる
2021/10/16(土) 17:03:21.91ID:cq/EQnSr0
VariantにはArrayとかも入るから ()付けても書式エラーにはならないのかな
2021/10/16(土) 17:06:32.68ID:eJomN4xc0
>>402
test3()は引数がないのに引数をわたそうとしている。

test3()は関数なのにy=test3(x)という構文ではなくてcallでtest3()を呼び出しいる。
2021/10/16(土) 17:09:51.40ID:cq/EQnSr0
test3の実行後にエラーになるのがこの質問のミソだと思うよ
2021/10/16(土) 17:43:21.23ID:nAOL9IkjM
>>402
そもそも「test3までは正常」というのが間違い
これではまったく動かない

とりあえず動くようにするなら、たとえばこう書けばいい
ほかにも色々なパターンが考えられるけど、何がやりたいのかよくわからないので

Dim WS As Worksheet

Sub main()
  Call TEMP_SHEET
  Call test3
End Sub

Sub TEMP_SHEET()
  Set WS = ThisWorkbook.Worksheets("temp")
End Sub

Sub test3()
  With WS
    .Select
    .Cells(1, 1) = "test"
  End With
End Sub
2021/10/16(土) 18:35:14.73ID:Pp6vdwK70
確かにこれではtest3は動かない
2021/10/16(土) 18:36:14.79ID:njPM+lzE0
>>402
test3まで処理が正常に行われたなら気にしなくていいんじゃね
2021/10/16(土) 18:46:34.14ID:m1u7MgLp0
ステップ実行させたら確かにtest3実行するな
こんなのコンパイルエラーで良いと思うんだが、なかなか興味深い
411デフォルトの名無しさん (ワッチョイ 6b01-Avck)
垢版 |
2021/10/16(土) 18:57:45.79ID:EZGI4ZK10
ありがとうございます!
test3はsubでよかったんですね。
参考にしながらいろいろ試したらできました。
すごく助かりました。
2021/10/16(土) 19:30:00.02ID:m1u7MgLp0
いや、問題はSubかFunctionかじゃないんだが
FunctionをCallしても、戻り値が捨てられるだけで別に問題はないぞ
名前の付け方がまあアレだが

Dim WS As Worksheet の行消して

Function TEMP_SHEET() As Worksheet
Set TEMP_SHEET = ThisWorkbook.Worksheets("temp")
End Function

Function test3(WS As Worksheet) As Variant
With WS
.Select
.Cells(1, 1) = "test"
End With
End Function

とかで動くだろ
413デフォルトの名無しさん (ワッチョイ 6b01-Avck)
垢版 |
2021/10/16(土) 20:00:16.92ID:EZGI4ZK10
>>412
ありがとうございます。すごく勉強になりました。
2021/10/16(土) 21:23:47.08ID:aQ5UbG+6a
最終の答え得るためにいくつの関数に分けるか、というのはどうやったら身につくんでしょうか
2021/10/16(土) 21:32:26.89ID:a6cW1Kja0
分けたくなったら分ければいい

・朝起きる
・トイレ
・歯磨き
・食事
・デンタルフロス
・着替え
・家出る

寝起きのルーチンとしてトイレ歯磨きをセットとするとか
無い時もある食事デンタルフロスをセットとするとか
歯磨きが先なのは寝起きで飲み食いが嫌で個人的な事だから異論はあると思う
2021/10/16(土) 21:49:34.88ID:CDLajE+o0
>>414
欲しい答えじゃないかもしれないけど

同じような処理を何度か書くような場面ができたときに、一つの関数にまとめるべきか検討するといいよ

むやみに何でも関数にすればいいというものではない
2021/10/17(日) 09:01:15.98ID:MVHP31+Wa
>>415
>>416
ありがとうございます。
手続き型しか書けなくて、ダラダラ長くなってしまうのが少し気になり始めてしまって、見やすいシンプルなコード見ると、どうしたらこういう考え方できるのかなと。
実験的にもいろいろやってみます。
418デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
垢版 |
2021/10/17(日) 11:37:36.37ID:LVwZEVKT0
別スレから来ました

A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
2021/10/17(日) 11:41:00.73ID:Vlp9RG+s0
余裕で可能
2021/10/17(日) 11:47:00.68ID:rQoWwir60
>>418
大分質問が上手くなったじゃないか。
ただ規定のファイルにはただ名前つけて保存するだけでいいのか?
2021/10/17(日) 12:11:29.02ID:ZLWKnlAP0
>>418
どこのスレから来たの?
Rubyスレかそうでないかで対応変わるんだけど
2021/10/17(日) 12:14:56.83ID:rQoWwir60
なんでExcelファイル操作するのにRubyスレから来るんだよ
423デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
垢版 |
2021/10/17(日) 12:16:45.71ID:LVwZEVKT0
別スレから来ました

A1 会社名 B1仕事の項目 C1整理番号
B1の項目に従って規定のExcelファイルを開いてA1の会社名とC1の整理番号を合体して名前をつけて保存っていう操作をしたいんだけど、これはVBAで出来ますか?
別件ですがVBAでオススメの書籍があれば教えてください
2021/10/17(日) 12:18:39.23ID:rQoWwir60
頭おかしくなったのか?
425デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
垢版 |
2021/10/17(日) 12:19:45.69ID:LVwZEVKT0
ブラウザバックしたら投稿した
すまない
Excel質問スレから来た

>>420
名前をつけて保存の前にいろいろやろうとは思ってるけど、VBA素人だからとりあえず名前をつけて保存までにしようと

VBAで出来ることはわかったのでダイマでもステマでもいいのでオススメの書籍を教えてください
2021/10/17(日) 12:22:55.44ID:Vlp9RG+s0
だってルビースレから来た時点で質問が目的じゃなくて
最終的にルビーコード貼り付けてどやーするのが目的の人だし
427デフォルトの名無しさん (ワッチョイ 2bb1-SdPo)
垢版 |
2021/10/17(日) 13:08:15.77ID:LVwZEVKT0
ルビースレってそもそもなんなのかって状態なんだが…
この板はブラウザバックで二重投稿した程度で中傷くらったりするのか?
エクセルのVBAについて質問してるのに全然違う答え返ってくるし
2021/10/17(日) 13:55:19.97ID:l76d9bPwM
ニヤニヤ
2021/10/17(日) 14:58:05.05ID:OE8yqt320
>>425
自分で本屋に行って内容を確認しようとは思わないのか?
2021/10/17(日) 15:24:33.87ID:rQoWwir60
>>425
B1の項目に従ってというのが謎なので気を利かせて絶対パスで指定のファイルを開くようにしたよ。
ちなみに5ちゃんに書くとファイルパスの¥マーク書けないから半角に直してね。

思ってた動きと違うと言うなら自分の質問200回音読してから書いてね。
動作が不足してるならちゃんと質問のここが出来てないって書いてね。

使い方
・データを打ち込んでるブックで、処理させたいデータの行のどの列でもいいから選択しておく
・マクロ実行
・指定したファイルに選択した行のA列+C列のデータの名前で名前をつけて保存される

─────────────────────


Sub test()

Gyo = Selection.Row

Data0 = Cells(Gyo, 1).Value
Data1 = Format(Cells(Gyo, 3), "000")

Namae0 = ThisWorkbook.Path & "¥" & Data0 & Data1 & ".xlsx"
Namae1 = Data0 & Data1 & ".xlsx"

Workbooks.Open "C:\Users\*****.xlsx"

Workbooks("*****.xlsx").SaveAs Filename:=Namae0

Workbooks(Namae1).Close

End Sub
2021/10/17(日) 15:26:59.96ID:Vlp9RG+s0
あーあルビーキチガイに無駄なエネルギー使ってる
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況