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/
探検
Excel VBA 質問スレ Part80
■ このスレッドは過去ログ倉庫に格納されています
2023/05/31(水) 08:23:38.97ID:4RV1IxmB
457デフォルトの名無しさん
2024/01/29(月) 08:31:12.61ID:yN7n5dLr458デフォルトの名無しさん
2024/01/29(月) 10:01:16.80ID:AKFLgh7s VBAには、on error goto という、
エラーが発生しても、エラー発生の行でエラー発生せず
処理を続行させちゃう ウレピィー機能が存在がするようぢゃ、
i = 3*なんちゃらかんちゃら数式 ……🐌
BDATA(i) = 128
というコードで🐌の行でオバーフローエラーに
なってももしかするとErrをトラップ💃
BDATA(i) = 128 を実行させれるコードも可能ぢゃ
モチロン、配列BDATAの内容はメチャクチャだが
気にしなければ、これでヨシ(๑•̀ㅂ•́)و✧
だって、エラー発生しちゃったらやだろ😎
いや、それより、ドンドン64ビットのエクセルに
移行して、ドンドンバグを潰そう。
テーブルが壊れてバグ発生させても、キニシナイ
ていうか、その方が、バグ対策のノウハウが
バッチリになって株価急上昇の予感がしてきました。
東証プライムどんどん📈しろっう。
てか、そうだ今日は、平日だっけ?
株価をチェックしなければいけないので、では
また今度だ
エラーが発生しても、エラー発生の行でエラー発生せず
処理を続行させちゃう ウレピィー機能が存在がするようぢゃ、
i = 3*なんちゃらかんちゃら数式 ……🐌
BDATA(i) = 128
というコードで🐌の行でオバーフローエラーに
なってももしかするとErrをトラップ💃
BDATA(i) = 128 を実行させれるコードも可能ぢゃ
モチロン、配列BDATAの内容はメチャクチャだが
気にしなければ、これでヨシ(๑•̀ㅂ•́)و✧
だって、エラー発生しちゃったらやだろ😎
いや、それより、ドンドン64ビットのエクセルに
移行して、ドンドンバグを潰そう。
テーブルが壊れてバグ発生させても、キニシナイ
ていうか、その方が、バグ対策のノウハウが
バッチリになって株価急上昇の予感がしてきました。
東証プライムどんどん📈しろっう。
てか、そうだ今日は、平日だっけ?
株価をチェックしなければいけないので、では
また今度だ
459デフォルトの名無しさん
2024/01/29(月) 10:08:59.28ID:eJ6L0Jkg >>451
改修できないのは能力不足なだけでは
改修できないのは能力不足なだけでは
460デフォルトの名無しさん
2024/01/29(月) 11:00:49.76ID:L9ToZbOs >>454
i = 32768 + 3840 * 3 * y + 3 * x - 32768
i = 32768 + 3840 * 3 * y + 3 * x - 32768
461デフォルトの名無しさん
2024/02/01(木) 09:50:16.10ID:qkLEEfNI >>453
NECはLANPLAN、LANWORDだよ。
NECはLANPLAN、LANWORDだよ。
462デフォルトの名無しさん
2024/02/06(火) 21:11:58.14ID:tk+LFJYg 以下のコードで構文エラーになる、ならない区別がつかなくて質問します。
クラスモジュール
Function 背景色(ByVal range1 As Range, ByVal range2 As Range)
Dim lng_color As Long
lng_color = range2.Interior.Color
range1.Interior.Color = lng_color
End Function
標準モジュール
Sub test()
Dim rng1 As Range
Dim rng2 As Range
Dim mc As New Class1
Set rng1 = Range("C3") 'C3の色を
Set rng2 = Range("A3") 'A3に適用する
Dim str As String
str = mc.背景色(rng1, rng2)
End Sub
これで、str=の部分をなくすと構文エラーになってしまうのはなぜでしょうか?
クラスモジュール
Function 背景色(ByVal range1 As Range, ByVal range2 As Range)
Dim lng_color As Long
lng_color = range2.Interior.Color
range1.Interior.Color = lng_color
End Function
標準モジュール
Sub test()
Dim rng1 As Range
Dim rng2 As Range
Dim mc As New Class1
Set rng1 = Range("C3") 'C3の色を
Set rng2 = Range("A3") 'A3に適用する
Dim str As String
str = mc.背景色(rng1, rng2)
End Sub
これで、str=の部分をなくすと構文エラーになってしまうのはなぜでしょうか?
463デフォルトの名無しさん
2024/02/06(火) 21:29:12.00ID:rCver0bK うちではならない
464デフォルトの名無しさん
2024/02/06(火) 22:51:37.41ID:8QVr9gKs Functionだから? callで呼んだり、Subに変えては。
465デフォルトの名無しさん
2024/02/07(水) 00:03:31.59ID:/C0r4gOv >>464の言うとおりだと思うけど、Subにしても Call はつけないとダメかな
それか引数を囲うカッコをつけないか
それか引数を囲うカッコをつけないか
467デフォルトの名無しさん
2024/02/07(水) 05:24:58.93ID:ptzdB5MT >>462
VBAの謎な仕様の一つ
Functionの戻り値を受け取らない時、Functionは関数ではなくステートメントの一種と解釈されてしまう(らしい)
ステートメントの書き方が、VBAでは「命令と引数を空白で区切る」というルールになっているから
ステートメントの具体的な例を挙げると、
Dim a, b
これを
Dim (a, b)
と書くとエラーになるのと一緒
Callで呼んだときに挙動が変わるのは、こんどは関数がCallステートメントのパラメータになるから、構文の解釈が変わる
さらにややこしいことに、引数が1つだとエラーにならない
これは、カッコが演算子とも解釈できてしまうから
a = b
を
a = (b)
と書いても、無意味だけどエラーにならないのと同じで、カッコが必要なケースではそのまま解釈され、必要ないケースでは演算子とみなすことが可能なので結局エラーにならない
VBAの謎な仕様の一つ
Functionの戻り値を受け取らない時、Functionは関数ではなくステートメントの一種と解釈されてしまう(らしい)
ステートメントの書き方が、VBAでは「命令と引数を空白で区切る」というルールになっているから
ステートメントの具体的な例を挙げると、
Dim a, b
これを
Dim (a, b)
と書くとエラーになるのと一緒
Callで呼んだときに挙動が変わるのは、こんどは関数がCallステートメントのパラメータになるから、構文の解釈が変わる
さらにややこしいことに、引数が1つだとエラーにならない
これは、カッコが演算子とも解釈できてしまうから
a = b
を
a = (b)
と書いても、無意味だけどエラーにならないのと同じで、カッコが必要なケースではそのまま解釈され、必要ないケースでは演算子とみなすことが可能なので結局エラーにならない
468デフォルトの名無しさん
2024/02/07(水) 05:54:42.53ID:TWD16jEo 皆様ありがとうございます。
VBA学習を始めて間もないので、RangeがなぜStringに入るのだろう?
などと考えて悩んでいました。
とりあえず空白にすればいいのかな?と思い、
mc.背景色 rng1, rng2
としたらエラーなく実行できました。
VBA学習を始めて間もないので、RangeがなぜStringに入るのだろう?
などと考えて悩んでいました。
とりあえず空白にすればいいのかな?と思い、
mc.背景色 rng1, rng2
としたらエラーなく実行できました。
469デフォルトの名無しさん
2024/02/07(水) 08:03:51.30ID:2Cso54Y+ >>467
謎も何もパーサの都合
謎も何もパーサの都合
470デフォルトの名無しさん
2024/02/07(水) 10:12:34.77ID:p6WTk8Ln カッコ悪っ
471デフォルトの名無しさん
2024/02/07(水) 21:43:51.95ID:rJek+uci (悪)
472デフォルトの名無しさん
2024/02/08(木) 15:06:23.74ID:AG84sVu5 workbookとworksheetsを両方変数で繋げるにはどうしたらよいのでしょうか?
それぞれsetでwb, wsとした場合、
ws.cells(n,n)やwb.worksheets(n).cells(x,x)なんかは問題なく動くのですがwb.ws.,,,,とするとエラーが起きてしまいます
それぞれsetでwb, wsとした場合、
ws.cells(n,n)やwb.worksheets(n).cells(x,x)なんかは問題なく動くのですがwb.ws.,,,,とするとエラーが起きてしまいます
473デフォルトの名無しさん
2024/02/08(木) 16:06:23.33ID:5OVFjneR ワークシートの親ワークブックは特定されるので指定は不要
wsだけで使えば良い
相互参照したいなら
set ws = wb.Worksheets(n)
set wb = ws.Parent
wsだけで使えば良い
相互参照したいなら
set ws = wb.Worksheets(n)
set wb = ws.Parent
474デフォルトの名無しさん
2024/02/08(木) 17:26:16.95ID:EcJUi253 >>472
Setしたwsにはwb要素も含まれてて変更できない
複数のブックでシート名を共通にしたい時はWorksheetオブジェクトじゃなくて文字列にシート名を入れる
Dim stnam As String
stnam = "Sheet1"
wb.Worksheets(stnam)
みたいに書く
Setしたwsにはwb要素も含まれてて変更できない
複数のブックでシート名を共通にしたい時はWorksheetオブジェクトじゃなくて文字列にシート名を入れる
Dim stnam As String
stnam = "Sheet1"
wb.Worksheets(stnam)
みたいに書く
475デフォルトの名無しさん
2024/02/08(木) 19:08:54.01ID:AG84sVu5 出来ました!ありがとうございます!
476デフォルトの名無しさん
2024/02/08(木) 20:49:29.84ID:szZI865F ListBoxの要素をクリックしても枠線が表示されるだけで
青色に反転しないことが時々あるのですが、何故でしょうか?
青色に反転しないことが時々あるのですが、何故でしょうか?
477デフォルトの名無しさん
2024/02/09(金) 12:00:32.11ID:VUVEy040 エスパーするとデザインモードになっていたりマクロ禁止状態だったりするから
478476
2024/02/09(金) 21:03:02.70ID:Essi4uO7 どうもListBoxの端っこをクリックするとListBox自体がアクティブになり
前回選択していた要素にフォーカスが当たるようです(フォーカスするだけで選択はしない、青色にも反転しない)
前回選択していた要素にフォーカスが当たるようです(フォーカスするだけで選択はしない、青色にも反転しない)
479デフォルトの名無しさん
2024/02/10(土) 12:07:45.28ID:oVCg53lr プロパティウィンドウで何か設定イジったとか?
480デフォルトの名無しさん
2024/02/10(土) 22:18:00.43ID:3oPB1Oyo VBAベーシック合格したから、スタンダードも挑戦したい。
その前に 「日商プログラミング検定 STANDARD VBA」をAmazonで買って読んでみたけど、
載ってるプログラムが糞すぎて話にならない。
俺が10行で書ける奴を40行ぐらいでやってる。
買って損した。
その前に 「日商プログラミング検定 STANDARD VBA」をAmazonで買って読んでみたけど、
載ってるプログラムが糞すぎて話にならない。
俺が10行で書ける奴を40行ぐらいでやってる。
買って損した。
481デフォルトの名無しさん
2024/02/10(土) 22:52:32.27ID:3oPB1Oyo >>180
ChatGPTで教えてもらった。
これからやってみるw
Sub GetVegetableInfo()
Dim sheet1 As Worksheet
Dim sheet2 As Worksheet
Dim lastRow As Long
Dim i As Integer
' 「Sheet1」と「Sheet2」を取得
Set sheet1 = Worksheets("Sheet1")
Set sheet2 = Worksheets("Sheet2")
' 「Sheet2」のA1:B5を順番に処理
For i = 1 To 5
' 「Sheet1」で条件に合う最後の行を取得
lastRow = sheet1.Cells(sheet1.Rows.Count, "A").End(xlUp).Row
Do While lastRow > 1 And (sheet1.Cells(lastRow, 1).Value <> sheet2.Cells(i, 1).Value _
Or sheet1.Cells(lastRow, 2).Value <> sheet2.Cells(i, 2).Value)
lastRow = lastRow - 1
Loop
ChatGPTで教えてもらった。
これからやってみるw
Sub GetVegetableInfo()
Dim sheet1 As Worksheet
Dim sheet2 As Worksheet
Dim lastRow As Long
Dim i As Integer
' 「Sheet1」と「Sheet2」を取得
Set sheet1 = Worksheets("Sheet1")
Set sheet2 = Worksheets("Sheet2")
' 「Sheet2」のA1:B5を順番に処理
For i = 1 To 5
' 「Sheet1」で条件に合う最後の行を取得
lastRow = sheet1.Cells(sheet1.Rows.Count, "A").End(xlUp).Row
Do While lastRow > 1 And (sheet1.Cells(lastRow, 1).Value <> sheet2.Cells(i, 1).Value _
Or sheet1.Cells(lastRow, 2).Value <> sheet2.Cells(i, 2).Value)
lastRow = lastRow - 1
Loop
482デフォルトの名無しさん
2024/02/10(土) 22:52:57.45ID:3oPB1Oyo 続き
' 購入年月日と価格を「Sheet2」に記入
If lastRow > 1 Then
sheet2.Cells(i, 3).Value = sheet1.Cells(lastRow, 3).Value
sheet2.Cells(i, 4).Value = sheet1.Cells(lastRow, 4).Value
Else
sheet2.Cells(i, 3).Value = "条件に合うデータが見つかりません"
sheet2.Cells(i, 4).Value = "条件に合うデータが見つかりません"
End If
Next i
End Sub
' 購入年月日と価格を「Sheet2」に記入
If lastRow > 1 Then
sheet2.Cells(i, 3).Value = sheet1.Cells(lastRow, 3).Value
sheet2.Cells(i, 4).Value = sheet1.Cells(lastRow, 4).Value
Else
sheet2.Cells(i, 3).Value = "条件に合うデータが見つかりません"
sheet2.Cells(i, 4).Value = "条件に合うデータが見つかりません"
End If
Next i
End Sub
483デフォルトの名無しさん
2024/02/10(土) 22:59:51.09ID:3oPB1Oyo 一発でできたw
ChatGPTはすごいww
ChatGPTはすごいww
484デフォルトの名無しさん
2024/02/10(土) 23:03:48.85ID:3oPB1Oyo こういう文を自分で分かるようになるまで1行づつ勉強していけば良いのかな。
485デフォルトの名無しさん
2024/02/11(日) 00:18:22.77ID:gsh865m+ >>484
こんなのがわからん人には一生無理だよ
こんなのがわからん人には一生無理だよ
486デフォルトの名無しさん
2024/02/11(日) 08:41:00.98ID:4jVVlROf Excel2019だから仕方ないけど、2021や365ならワークシート関数で簡単に出来る内容だね。
487デフォルトの名無しさん
2024/02/11(日) 10:25:34.29ID:ectqOeXX んなこたーない
千里の道も一歩から
千里の道も一歩から
488デフォルトの名無しさん
2024/02/11(日) 11:10:11.68ID:KVjYyEwK >>487
賛成
賛成
489デフォルトの名無しさん
2024/02/11(日) 13:11:20.60ID:Uyf5FkAB 構造体の項目名を取ってくることって可能
Type type社員
番号 As Long
氏名 As String
所属 As String
住所 As String
電話 As String
End Type
こんな風になってる場合、
「番号」、「氏名」とかの項目名を取ってきたい
Type type社員
番号 As Long
氏名 As String
所属 As String
住所 As String
電話 As String
End Type
こんな風になってる場合、
「番号」、「氏名」とかの項目名を取ってきたい
490デフォルトの名無しさん
2024/02/11(日) 13:13:40.26ID:ODGSF/9t Chatgptに頼るとそれが癖になりそうでよ。
491デフォルトの名無しさん
2024/02/11(日) 13:31:41.97ID:RI7D2x7j492デフォルトの名無しさん
2024/02/11(日) 13:57:26.10ID:KVjYyEwK >>490
そもそも、こういう計算関係の問題ならChatGPTの方が人間よりも数万倍能力高いのに、どうして人間がやらなきゃいけないのか?
そもそも、こういう計算関係の問題ならChatGPTの方が人間よりも数万倍能力高いのに、どうして人間がやらなきゃいけないのか?
493デフォルトの名無しさん
2024/02/11(日) 14:03:59.06ID:Uyf5FkAB494デフォルトの名無しさん
2024/02/11(日) 15:16:37.77ID:1/wSFivK 千里は約3900kmだから歩くのはちょっと無理かな
495デフォルトの名無しさん
2024/02/11(日) 17:35:01.49ID:N93Z/F6t496デフォルトの名無しさん
2024/02/11(日) 17:37:11.13ID:n3f0KEJ+497デフォルトの名無しさん
2024/02/11(日) 18:53:55.53ID:ODGSF/9t Excelもそのうち完全自動化になって手作業が無くなると聞いたしね。
498デフォルトの名無しさん
2024/02/12(月) 02:43:42.58ID:rGOG+Ewu 完全自動化にはならない
少なくとも仕様をExcelに伝えないといけない
しかも正確に
これは結構大変だと思う
少なくとも仕様をExcelに伝えないといけない
しかも正確に
これは結構大変だと思う
499デフォルトの名無しさん
2024/02/12(月) 06:48:14.86ID:+xqPKZXk 結局、馬鹿にできることは限られる
500デフォルトの名無しさん
2024/02/12(月) 07:23:59.37ID:QaD8MNfw いまだに古いexcel使っているから関係ない
501デフォルトの名無しさん
2024/02/12(月) 15:27:03.31ID:Ey14GliG 何かの記事か動画で、ケースの中にノーパソがあって、csvから自動で読み込んで手作業の如く加工したり関数が自動的に入力されているのを見た記憶ある。
将来的に完全自動になるとかなんとか
将来的に完全自動になるとかなんとか
502デフォルトの名無しさん
2024/02/12(月) 17:36:44.35ID:rGOG+Ewu それだけなら今の技術でもできる
問題は入力をどう捌くか
仕様は人間にしかわからないし
ケース分けはすぐに複雑になるので
うまく指示しないと
すぐに保守不能になる
問題は入力をどう捌くか
仕様は人間にしかわからないし
ケース分けはすぐに複雑になるので
うまく指示しないと
すぐに保守不能になる
503デフォルトの名無しさん
2024/02/12(月) 22:27:01.21ID:+xqPKZXk >>501
頭悪そう
頭悪そう
504デフォルトの名無しさん
2024/02/12(月) 23:37:18.45ID:Ulhaap3A どんなにいいものでも頭の悪い人には宝の持ち腐れになるな
505デフォルトの名無しさん
2024/02/13(火) 01:00:51.32ID:rVlFUe7M 高度な科学技術は(バカには)魔法と区別がつかない
506デフォルトの名無しさん
2024/02/13(火) 01:02:28.32ID:RhcUAVku 「猿でもわかるようにしろ」と猿が言う
507デフォルトの名無しさん
2024/02/13(火) 11:52:54.11ID:5h/UERvP 例のRPAの事か。
508デフォルトの名無しさん
2024/02/13(火) 15:20:55.90ID:A8w0YSx0 DIM 社員番号 As Long
DIM 社員氏名(99) As String
DIM 社員所属(99) As String
DIM 社員住所(99) As String
DIM 社員電話(99) As String
では、🙅ですか❓
DIM 社員氏名(99) As String
DIM 社員所属(99) As String
DIM 社員住所(99) As String
DIM 社員電話(99) As String
では、🙅ですか❓
509デフォルトの名無しさん
2024/02/13(火) 18:34:38.38ID:l+mukg6e 200ぐらいは必要だな
510デフォルトの名無しさん
2024/02/13(火) 19:29:15.56ID:gT/Ie7tm chatgptに聞いてみたら?
511デフォルトの名無しさん
2024/02/13(火) 19:50:47.77ID:NapwYJ4w ChatGPTに書かせまくってます
512デフォルトの名無しさん
2024/02/14(水) 01:36:32.34ID:TDgQUPLD そんなのに頼っていたらスキル上がらないだろ
513デフォルトの名無しさん
2024/02/14(水) 19:27:17.85ID:39zPDMmV AIが先に学習するんじゃね
514デフォルトの名無しさん
2024/02/14(水) 20:58:16.61ID:tCnXYZyu >>512
ChatGPTにできない事でスキル上げしないと将来無いと思ってる。
ChatGPTにできない事でスキル上げしないと将来無いと思ってる。
515デフォルトの名無しさん
2024/02/15(木) 05:36:09.01ID:y76Vsl10 ChatGPTの倒し方?
516デフォルトの名無しさん
2024/02/15(木) 07:21:00.00ID:dt58r8nV ChatGpt、間違っていたり動かないコードを提示される場合あるみたいね。
517デフォルトの名無しさん
2024/02/15(木) 09:00:47.65ID:rrljL6vB そら完全じゃないからな、やれば分かるよ
でも理解してればすごい便利
でも理解してればすごい便利
518デフォルトの名無しさん
2024/02/15(木) 11:17:18.79ID:e8ChaJiV わざわざ聞くのはコマンドを知らないから?
Excelなら記録でわかるから機能を知らないからか?
もしくはキー入力が遅い?
文法すら分からないってのは流石に使えないだろうし
Excelなら記録でわかるから機能を知らないからか?
もしくはキー入力が遅い?
文法すら分からないってのは流石に使えないだろうし
519デフォルトの名無しさん
2024/02/15(木) 11:54:24.32ID:rrljL6vB 普段色んな言語扱ってると思い出せないときとかあるからね
「この言語ってlengthとcountどっちだったっけ、これanyとか使えたっけ?」
「配列ってnewとかだっけ」
「あれこの言語const,define,var,val,letどれが使えないんだっけ」
「Integerはintでいいんだっけ、あれInt32だっけ」
みたいな細かい所を確認したりせずに
まるっとどーんと一旦サンプルとして形にできるからラク
アルゴリズムとかはそこから見直せば良い
vbeはcopilot対応してないし(よね?)
「この言語ってlengthとcountどっちだったっけ、これanyとか使えたっけ?」
「配列ってnewとかだっけ」
「あれこの言語const,define,var,val,letどれが使えないんだっけ」
「Integerはintでいいんだっけ、あれInt32だっけ」
みたいな細かい所を確認したりせずに
まるっとどーんと一旦サンプルとして形にできるからラク
アルゴリズムとかはそこから見直せば良い
vbeはcopilot対応してないし(よね?)
520デフォルトの名無しさん
2024/02/15(木) 17:50:12.85ID:UJmHWKAW 色んな言語使ってない人は迷わないってことならそれでいいんじゃね
521デフォルトの名無しさん
2024/02/15(木) 18:44:29.22ID:00CMZm7v まあそらVBA専従なら自分で書きはじめたほうが早いかもしらんね
522デフォルトの名無しさん
2024/02/15(木) 18:47:58.30ID:G5y7v+SU VBAの知識あります
でも職層も低く若手に馬鹿にされまくってますって化石おじさんいるわ
絶望的に発想もセンスも乏しい
そんなことVBAでやるまでもないそんな処理意味ないけどってとこまで
まるでお前らです
でも職層も低く若手に馬鹿にされまくってますって化石おじさんいるわ
絶望的に発想もセンスも乏しい
そんなことVBAでやるまでもないそんな処理意味ないけどってとこまで
まるでお前らです
523デフォルトの名無しさん
2024/02/15(木) 19:21:27.05ID:SrphZNWT524デフォルトの名無しさん
2024/02/18(日) 19:40:32.04ID:Jd2tuU++ 保存に失敗したのか何なのか分からんが
標準モジュールの中身が突然消えた(フォームは残ってる)
復旧も無理そうなので、今度の連休にまた最初から書き直すことにする
標準モジュールの中身が突然消えた(フォームは残ってる)
復旧も無理そうなので、今度の連休にまた最初から書き直すことにする
525デフォルトの名無しさん
2024/02/18(日) 19:46:11.18ID:+FxfYFYB windowsにもExcelにも自動バックアップ機能あるぞ
うっかり上書き保存しても前のファイルが取り戻せる
ぐぐって設定しとけ
うっかり上書き保存しても前のファイルが取り戻せる
ぐぐって設定しとけ
526デフォルトの名無しさん
2024/02/18(日) 20:04:54.83ID:Jd2tuU++ 今度からそうする
自分の知らないうちにどこか分からない場所に勝手に保存される
というのがなんか嫌で、あまり使ったことなかった
自分の知らないうちにどこか分からない場所に勝手に保存される
というのがなんか嫌で、あまり使ったことなかった
527デフォルトの名無しさん
2024/02/19(月) 06:48:23.74ID:w7/dFwx/ ポクは、自動バックアップは、よく解らんけど、いつの間にか
自動バッチリアップされてるけど、何か、ヤダから、
標準モジュール内のVBAコードは、丸ごと手作業で
シート内に、コピペしてる。文字化けもほぼ皆無
場合によっては、メモ帳に貼り付け、テキストで保管
ま、念の為だから、保管したテキストも数日でゴミ箱にポイだ
BY 🤡
自動バッチリアップされてるけど、何か、ヤダから、
標準モジュール内のVBAコードは、丸ごと手作業で
シート内に、コピペしてる。文字化けもほぼ皆無
場合によっては、メモ帳に貼り付け、テキストで保管
ま、念の為だから、保管したテキストも数日でゴミ箱にポイだ
BY 🤡
528527
2024/02/19(月) 06:54:55.85ID:w7/dFwx/ あっそうだ、コメント行で、'とかあうのが
シート貼り付けで、消えたように見えるので、
ポクは、コメントは、'は一文字ではなく、
'''''ポクはやり方はバッチリだから文句いうな
って感じで、'は沢山つなげております。
シート貼り付けで、消えたように見えるので、
ポクは、コメントは、'は一文字ではなく、
'''''ポクはやり方はバッチリだから文句いうな
って感じで、'は沢山つなげております。
529デフォルトの名無しさん
2024/02/19(月) 08:48:43.14ID:1uSUYqxO530デフォルトの名無しさん
2024/02/19(月) 09:24:14.83ID:CiX+tN/V 男はゴミ箱の中に溜めたが多い。女はゴミ箱に溜めない、即消去する傾向があるw
531デフォルトの名無しさん
2024/02/19(月) 19:27:36.95ID:2s0lLr+U まだ根拠のないことを
532デフォルトの名無しさん
2024/02/19(月) 22:06:40.75ID:CiX+tN/V 恋愛を引き出しにゴミ箱に例えただけだよ。男っていつまで未練タラタラじゃん。
533デフォルトの名無しさん
2024/02/19(月) 22:25:41.40ID:2s0lLr+U 自己紹介乙
534デフォルトの名無しさん
2024/02/20(火) 07:38:20.43ID:aIKR0wuU 変数の宣言してからにしてください
535465
2024/02/20(火) 09:18:26.52ID:mq9qgv3z >>524
Office365で同じような現象がありましたが、古い2010でマクロブックを開いたらちゃんと標準・クラスモジュールが見え、エクスポートできました
あと、OSをシフトキーを押下したまま(完全な)シャットダウンするとよいという情報もありました
後者はうろ覚えなので、間違いだったらスマヌ
Office365で同じような現象がありましたが、古い2010でマクロブックを開いたらちゃんと標準・クラスモジュールが見え、エクスポートできました
あと、OSをシフトキーを押下したまま(完全な)シャットダウンするとよいという情報もありました
後者はうろ覚えなので、間違いだったらスマヌ
536デフォルトの名無しさん
2024/02/20(火) 09:19:50.79ID:mq9qgv3z >>535 の投稿者ですが
僕は465ではありません
僕は465ではありません
537デフォルトの名無しさん
2024/02/20(火) 12:31:23.17ID:mTqV5HiO AIなら競馬とか株とかで儲かる奴わかるかな
538デフォルトの名無しさん
2024/02/20(火) 13:17:34.25ID:gHDpofJ4 お世話になります。Microsoft365を使用しております。
納品書作成で別シートのマスタからvlookupで商品名に対応する単価を引っ張って来ています。ただ、全社共通単価の商品と、取引先ごとに単価が違う商品があります。
単価が違う商品のために取引先ごとにシートを分けて各社のマスタをつくり、それとは別に共通マスタ(全社共通単価商品リスト)を作って、一つのファイルで各社納品書を作成というのをしたいです。
例えば
シート1:納品書原本
シート2:トヨタマスタ
シート3:ホンダマスタ
シート4:全社共通マスタ
シート1のA1セルにプルダウンで、トヨタ、ホンダ、を選択する。
トヨタを選んだ場合は、トヨタマスタから単価を引っ張ってくる。
もしトヨタマスタに当該商品がない場合は、共通マスタから引っ張ってくる。
ということをやりたいのですが、できますか?
ChatGPTに投げてみましたが、トヨタに当該商品名がない場合→ホンダ→全社共通検索するみたいな感じで、ちょっと芯をつけませんでした。(同じ商品名でも単価が違う)
ちなみにトヨタとかにしてますが扱う商品は食品です。
例えばキャベツは全社共通単価だけど牛肉は会社によってグレードも違うので単価が異なるみたいな感じです。
また野菜は時価なので共通マスタの単価修正も頻繁で、会社ごとにファイルを作るのは大変なので一つのファイルでやりたいと思った次第です。
これよりもっと簡単な方法でも結構ですので、アドバイスなどご教示いただければ幸いです。よろしくお願いします。
納品書作成で別シートのマスタからvlookupで商品名に対応する単価を引っ張って来ています。ただ、全社共通単価の商品と、取引先ごとに単価が違う商品があります。
単価が違う商品のために取引先ごとにシートを分けて各社のマスタをつくり、それとは別に共通マスタ(全社共通単価商品リスト)を作って、一つのファイルで各社納品書を作成というのをしたいです。
例えば
シート1:納品書原本
シート2:トヨタマスタ
シート3:ホンダマスタ
シート4:全社共通マスタ
シート1のA1セルにプルダウンで、トヨタ、ホンダ、を選択する。
トヨタを選んだ場合は、トヨタマスタから単価を引っ張ってくる。
もしトヨタマスタに当該商品がない場合は、共通マスタから引っ張ってくる。
ということをやりたいのですが、できますか?
ChatGPTに投げてみましたが、トヨタに当該商品名がない場合→ホンダ→全社共通検索するみたいな感じで、ちょっと芯をつけませんでした。(同じ商品名でも単価が違う)
ちなみにトヨタとかにしてますが扱う商品は食品です。
例えばキャベツは全社共通単価だけど牛肉は会社によってグレードも違うので単価が異なるみたいな感じです。
また野菜は時価なので共通マスタの単価修正も頻繁で、会社ごとにファイルを作るのは大変なので一つのファイルでやりたいと思った次第です。
これよりもっと簡単な方法でも結構ですので、アドバイスなどご教示いただければ幸いです。よろしくお願いします。
539デフォルトの名無しさん
2024/02/20(火) 13:51:18.21ID:dLB+ndOn トヨタに当該商品名がない場合→→全社共通検索する
でいいと思います
でいいと思います
540デフォルトの名無しさん
2024/02/20(火) 14:41:09.38ID:gHDpofJ4 >>539
早速ありがとうございます
そのようにしたいのですが、現状のこのコードをどう改良したら良いのか教えていただけませんか?
=IF($C11="","",VLOOKUP($C11,'共通マスタ'!$A$2:$F$49,3,FALSE))
A1にトヨタまたはホンダを選択→まずは当該マスタから検索、ヒットしなければ共通マスタから検索
早速ありがとうございます
そのようにしたいのですが、現状のこのコードをどう改良したら良いのか教えていただけませんか?
=IF($C11="","",VLOOKUP($C11,'共通マスタ'!$A$2:$F$49,3,FALSE))
A1にトヨタまたはホンダを選択→まずは当該マスタから検索、ヒットしなければ共通マスタから検索
541デフォルトの名無しさん
2024/02/20(火) 14:50:02.37ID:M78wyy3v >>538
365で、もうVSTACK関数も使える状況ならVlookupの対象配列の部分を
VSTACK(if(A1=ホンダ,ホンダマスタの配列, トヨタマスタの配列), 全社共通マスタ)
みたいにすればいけるんじゃない
365で、もうVSTACK関数も使える状況ならVlookupの対象配列の部分を
VSTACK(if(A1=ホンダ,ホンダマスタの配列, トヨタマスタの配列), 全社共通マスタ)
みたいにすればいけるんじゃない
542デフォルトの名無しさん
2024/02/20(火) 14:53:03.06ID:hW6ivZL7 1アイテム(商品)に複数の単価枠を設けておく
共通単価・トヨタ単価・ニッサン単価・ホンダ単価・時価A・時価B えtc(ニッサン嫌いなのかな)
取引先(売上先)選択とアイテムとをセットでキーにして、どの単価列から引っ張るか の工夫をする
メリットは、商品マスタがひとつ(1Sheet)で済む 単価変更時アッチコッチ探さずに済む
漏れ・誤記入などの心配が減る
ま、かなりアイテムにボリュームありそうな気もするが、Excel案件なんだろうか
共通単価・トヨタ単価・ニッサン単価・ホンダ単価・時価A・時価B えtc(ニッサン嫌いなのかな)
取引先(売上先)選択とアイテムとをセットでキーにして、どの単価列から引っ張るか の工夫をする
メリットは、商品マスタがひとつ(1Sheet)で済む 単価変更時アッチコッチ探さずに済む
漏れ・誤記入などの心配が減る
ま、かなりアイテムにボリュームありそうな気もするが、Excel案件なんだろうか
543デフォルトの名無しさん
2024/02/20(火) 15:07:26.04ID:gHDpofJ4 アドバイスありがとうございます
色んな方法がありますね脱帽します
今晩色々試してみてまた相談に来るかもしれないのでその時はよろしくお願いします
ありがとうございました
色んな方法がありますね脱帽します
今晩色々試してみてまた相談に来るかもしれないのでその時はよろしくお願いします
ありがとうございました
544デフォルトの名無しさん
2024/02/20(火) 15:43:31.16ID:vFZuIKL3 いや、こんなのがわからんような馬鹿しか雇えない会社は素直に販売管理アプリを買えよ
545デフォルトの名無しさん
2024/02/20(火) 17:13:24.90ID:H2tvJq6U 最近 VBA→C#→Pythonを使ってきたけど
Pythonが使いなれた今、VBAやC#を使おうと思うと絶望的な気分になる
Pythonが使いなれた今、VBAやC#を使おうと思うと絶望的な気分になる
546デフォルトの名無しさん
2024/02/20(火) 18:02:54.37ID:8pz2H1mu >>545
どういうところに絶望を感じるのですか?
どういうところに絶望を感じるのですか?
547デフォルトの名無しさん
2024/02/20(火) 18:52:28.47ID:iFixHzej Pythonが使いなれた今、VBAやC#は忘れてしまった
548デフォルトの名無しさん
2024/02/20(火) 18:59:39.48ID:NODozx+x 日本もまともに書けない知的障害者っぽいからな
549デフォルトの名無しさん
2024/02/20(火) 19:16:59.33ID:MsWX/+8O >>547
暗記していないといけないと思っているタイプ?、
暗記していないといけないと思っているタイプ?、
550デフォルトの名無しさん
2024/02/20(火) 19:28:04.83ID:l7u+7wdU おれ、pythonでGUI作ろうとして絶望的な気分
551デフォルトの名無しさん
2024/02/20(火) 20:16:30.65ID:aIKR0wuU 正しいコードを暗記して書かないと
ってのが一番の軸にある奴はVBAに限らず昔から仕事出来ないって言われてるよね
いつまで経っても平のまさにお前ら
AIを鵜呑みにはせずやりたい事をChatGPTで形にして自分や他者でトライしてアイデアと発想を足してくのが出来るスタイル
そんなのも正しく出来ないようじゃとか言ってる限り後輩に追いつけないよ
ってのが一番の軸にある奴はVBAに限らず昔から仕事出来ないって言われてるよね
いつまで経っても平のまさにお前ら
AIを鵜呑みにはせずやりたい事をChatGPTで形にして自分や他者でトライしてアイデアと発想を足してくのが出来るスタイル
そんなのも正しく出来ないようじゃとか言ってる限り後輩に追いつけないよ
552デフォルトの名無しさん
2024/02/20(火) 20:59:15.05ID:zp/lfkDL >>550
絶望的に能力が足りてないからか
絶望的に能力が足りてないからか
553545
2024/02/20(火) 22:44:54.58ID:H2tvJq6U 静的型付けというだけで萎える
さらに、End if や Next i とかがマジでめんどくさい。
短いマクロくらいだったら問題にならないが、規模が少しでかくなると、この少しずつの煩わしさが絶望感になるw
さらに、End if や Next i とかがマジでめんどくさい。
短いマクロくらいだったら問題にならないが、規模が少しでかくなると、この少しずつの煩わしさが絶望感になるw
554デフォルトの名無しさん
2024/02/20(火) 23:00:15.92ID:vFZuIKL3 そんな程度が煩わしいって
境界知能なのかな
境界知能なのかな
555デフォルトの名無しさん
2024/02/21(水) 01:47:31.07ID:7yeq8x/m バリアントでバリバリ書けよ
チョベリグよ
チョベリグよ
556デフォルトの名無しさん
2024/02/21(水) 22:49:51.75ID:JRlyvdS9 バリバリバリアント
557デフォルトの名無しさん
2024/02/21(水) 23:38:25.69ID:D/PVtLjg >>538ですがchatGPTにききながらとりあえずやっとできました。
でも取引先が多くなると式が長くなりすぎて微妙なんで何かいい方法ないでしょうか?
今こんな感じです
=IF(ISBLANK($C9), "",
IF($A$1="トヨタ", IFERROR(VLOOKUP($C9, トヨタ, 2, FALSE), "エラー: トヨタのデータが見つかりません"),
IF($A$1="ホンダ", IFERROR(VLOOKUP($C9, ホンダ, 2, FALSE),
IFERROR(VLOOKUP($C9, 共通マスタ, 2, FALSE), "エラー: 共通マスタのデータが見つかりません")),
IFERROR(VLOOKUP($C9, 共通マスタ, 2, FALSE), "エラー: 共通マスタのデータが見つかりません"))
)
)
>>542さんのやつなら短くできますかね?
でも取引先が多くなると式が長くなりすぎて微妙なんで何かいい方法ないでしょうか?
今こんな感じです
=IF(ISBLANK($C9), "",
IF($A$1="トヨタ", IFERROR(VLOOKUP($C9, トヨタ, 2, FALSE), "エラー: トヨタのデータが見つかりません"),
IF($A$1="ホンダ", IFERROR(VLOOKUP($C9, ホンダ, 2, FALSE),
IFERROR(VLOOKUP($C9, 共通マスタ, 2, FALSE), "エラー: 共通マスタのデータが見つかりません")),
IFERROR(VLOOKUP($C9, 共通マスタ, 2, FALSE), "エラー: 共通マスタのデータが見つかりません"))
)
)
>>542さんのやつなら短くできますかね?
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【調査】クレジットカード、1人何枚持つのが「平均的」?★3 [ひぃぃ★]
- 【作家】高市総理支持の背景に見えるヤンキー的「ケンカ上等!」と「日本人は特別だ」感がとても怖い 北原みのり [少考さん★]
- 宮崎あおい「電子レンジ持ってない」“丁寧な暮らし”を告白「ごはんを温め直すときも蒸し器」に「凄すぎ」の声 [muffin★]
- 【テレビ】池上彰氏 報道の自由度が高い国の特徴「どんどん政府を批判する。政治家は受け入れる」 一方独裁国家は… [冬月記者★]
- 「日本が戦争に一歩踏み出す危機感」官邸前で抗議デモ 高市総理“台湾有事”発言の撤回求める 中国メディアの姿も ★3 [蚤の市★]
- 「『ETC』←なんて読んでますか?」 公募で決めたのに全然呼ばれなかった“幻の愛称”とは [七波羅探題★]
- 古市憲寿「スタジオでも中国批判して気持ち良くなってる人はいるが高市答弁で日本人は損してる。国益を害した」スタジオ凍りつく [931948549]
- 今俺が満を持して…
- 車の暖房最初だけ電気で加熱してくれるか
- 昔『境界性人格障害』って流行ったけど、その実態は単なる発達障害よな [455031798]
- 高市政権「中国への反論はSNSでやるわ。覚悟しろ中国!!!!!」 [834922174]
- 底辺と思われがちだけど意外と稼いでる職
