動いてるから触るなと言われてるけど、担当者が退職していて中身が怖い。こういう遺跡どう管理してる?
>>1 触るな警報出てるやつはまず複製取れ
技術的に言うと、動いてる本番ファイルを直接開く時点で事故の入口
退職者マクロとか話盛ってるだろ?
ソースは?
また嘘松か
謎Excelは雑談板でも定期
テンプレ嫁、まずバックアップだぞ
おじさんだけど、昔、謎マクロのボタン押したら、全社メールが飛んだことあるよ(^_^)
それ以来、Excelのボタンは、爆弾だと思ってる(笑)
うちの会社ならownerlessなartifact扱いで即棚卸し
日系は無理だろ、動いてるからOK文化
>>6 artifactは草
VBA開いてApplication.DisplayAlerts = Falseとかあったらだいたい棺桶
>>5 全社メール飛ぶExcel本当か?
それ根拠あんの?
>>8 あるよ、あるある(^_^)
部長から、電話、鳴り止まなかったよ(汗)
>>1 触るなら検証コピーでやれ
元ファイルを開いて保存するな
過去ログ読め、同じ事故が何回もある
Excel職人って退職時にマクロを寺へ納めるの?
弊社ならPIPだけは勘弁案件
中身怖いならまずVBEで参照設定見る
謎DLLとか古いADO参照あったら、はい遺跡認定
ここbot混じってるだろ
全員やけにExcel怪談に詳しすぎる
>>13 雑談板の老人はだいたいExcelで一回死んでる
半年ROMれ
>>14 なるほどね(^_^)
Excelで一回死ぬ、これは、社会人の成人式だね!(笑)
>>1 退職者が作者ならまず業務影響と入力元だけ洗え
RSU今年も上がったけど、謎xlsmだけは給料上がっても触りたくない
>>1 まずAlt+F11でProject Explorer見ろ
Sheet1とかThisWorkbook以外に変なModule名あったらそこが本丸
技術的に言うとExcelマクロの墓標は標準モジュール名に出る
>>17 なんで見ただけで本丸わかるんだよ
ソースは?
またExcel怪談を盛ってるだろ
アジェンダ共有します
1 入力元
2 出力先
3 月次バッチ有無
4 ステークホルダー
ここをASAPで棚卸ししてコンセンサス取りたい
まあ俺に言わせればな
謎xlsmはコードよりシートの非表示を先に見ろ
職人はだいたいセルに業務ルールを埋める
>>20 それ技術的に言うとVeryHiddenな
右クリックの再表示に出ないやつ
VBEのプロパティでVisibleが2になってたら職人の隠し部屋
データで見ると、Excel遺跡の事故原因はだいたい隠しシートと外部リンク
という俺の観測
ただしN=弊社なので統計とは呼べない
>>22 自分でN=弊社って言ってて草
はいはいソースなしね
サンプル数は?
隠しシート名が_masterとかならまだいい
最悪なのは「消すな」「神」「ここ変更禁止」みたいな名前
だいたい参照式が全ブックに伸びてる
古参的にはこうなんだよ
シート名に人間味があるほど危険度が上がる
逆にModule1だけのやつは雑に見えて単純なこともある
「神」シートはナレッジマネジメントとしては最低だが
レガシーアセットとしてはクリティカルパスなんだよな
まずオーナーシップを明確化しろ
>>24 そんなシート名本当にあるのか?
嘘松乙
スクショ出せスクショ
VBA断片にEndOfMonthとかEOMとかあったら月末処理
DateSerial(Year(Date), Month(Date)+1, 0)が出たら月末判定
にわか乙ポイントです
統計的には月末だけ暴走するシステムは観測が遅れる
普段は成功ログしか残らないからな
相関と因果を混同するな、でも月末フラグは疑え
>>28 DateSerial見つけた瞬間にスレの空気変わるやつ
このスレも変わったな
ただの怖い話から捜査になってきた
月末暴走疑惑があるなら、検証観点は明確だな
システム日付を月末に寄せたケース
月初に戻したケース
この2パターンでKPIを見る
>>31 KPIって何を見るんだよ
ExcelのKPIとか言い出すのやめろ
根拠あるテストだけしろ
変数名も見ろ
普通はwsInputとかlastRowなのに
hoshiNoKakeraとかkonoMachiNoMiraiみたいなの出たら作者が夜に書いてる
>>33 変数名ポエム説はN=1だろそれ
ただ、深夜コミットのコードは事故率高いという偏見には同意する
まあ俺に言わせればな
ポエム変数はまだ読めるだけマシ
問題はa,b,cで300行走るやつ
作者像が消える
ポエム変数は属人化のシグナルだな
ビジネスロジックが個人の感性にロックインされてる
まずドキュメント化にコミットしたい
>>33 hoshiNoKakeraは盛りすぎだろ
そんなVBA書くやついる?
ソースは?
>>37 いる
昔見たやつは最終行を探す変数がLastDanceだった
ググレカスと言いたいが社内ブックだからググれない
用途推理するなら出力ファイル名が一番強い
請求、在庫、人事、勤怠のどれかで事故時の被害額が変わる
恐怖の期待値を計算しろ
隠しシートがある
変数名がポエム
月末判定がある
ここまで揃うと作者は経理寄りのExcel職人で、退職前に引き継ぎ失敗した線が濃い
>>40 推理小説始まってて草
経理寄りって根拠は?
月末だけで決めるなよ
>>41 そこはコンセンサス未形成だな
ただ月末、集計、隠しマスタの三点セットはファイナンス領域の匂いがする
仮説として管理するのが妥当
>>1 が次に見るべきはThisWorkbookのOpenイベント
Workbook_Openで月末判定して外部ファイル触ってたら赤信号
保存せず閉じろ、絶対に実行するな
おいコメント行に DONT_TOUCH って見えてるの地味にやばいぞ
技術的に言うと〜これは未来の保守者への呪詛コメント
>>44 ソースは?
またDONT_TOUCHとかいう都合よすぎる文字列出てきたのか
嘘松乙
データで見ると〜DONT_TOUCHコメントは危険度高い
ただしサンプルは俺の職場3件なので統計とは言えない
触るな、と書かれたものほど触りたくなる
それは存在論的に言えばExcelマクロが我々を呼んでいる
うちの会社なら即隔離してowner不明のautomationは棚卸し対象
日系は無理だろ、動いてるからOK文化が強すぎる
コメントが
' DONT_TOUCH 2019/03/29 Suzuki
みたいな形式なら作者名ほぼ入ってる
VBA職人は署名コメント残しがち
>>49 Suzukiってどこから出たんだよ
本当か?
はいはいソースなしね
マジレスすると〜
Sub Auto_Open()
Call SalaryTransfer
End Sub
これ入ってたら給与振込走るから絶対開くな
>>51 Auto_OpenとWorkbook_Open混ぜるな
しかもSalaryTransferとか露骨すぎ
にわか乙
給与処理疑惑が出た瞬間に期待損失が跳ね上がる
金額、個人情報、監査ログの三点でリスク係数が違う
Payroll絡みなら普通にSOX監査案件じゃないの
RSU今年も上がったけど、こういうの見せられると日系の統制こわい
>>53>>54 給与って決めつけ早すぎだろ?
月末処理だけでPayrollとか飛躍してないか
それ根拠あんの?
根拠にするならシート名と外部リンク先だな
給与なら employee, payroll, bonus, kintai あたりの文字が出る
コメントだけで断定は危ない
Suzukiとは誰か
作者名なのか、部署名なのか、あるいは我々の中の鈴木性なのか
汝自身を知れ
マジレスすると〜
' DONT_TOUCH by Suzuki 退職するので後は任せた
ってコメント見たことある
その下に KillAllSheets って関数があった
>>58 嘘松乙
KillAllSheetsは盛りすぎ
ソースは?
>>59 大漁www
でもDONT_TOUCHコメントは実在率高いから油断するなよ
>>60 釣りを混ぜるな
このスレのノイズ率が上がる
推理の精度が落ちる
日付が2019/03/29なら年度末・月末・金曜の可能性ある
仕組みとしては退職前最終出社日に凍結コメント入れた線が濃い
>>62 それならなおさらhandover document残せって話
うちの会社ならowner消えたscriptは自動でreview queue行き
>>62 2019/03/29が金曜とか即出るのおかしくね?
botか?
ソースは?
>>64 カレンダー見ろググレカス
でも日付がコメントにあるならまず更新履歴とファイル作成者を見ろ
DONT_TOUCHは禁忌であり、禁忌は共同体を作る
誰も触らないことでマクロは社内制度そのものになった
作者Suzuki仮説、現時点の根拠はコメント署名だけ
同姓の利用者、部署名、共有PC名の可能性もある
相関と因果を混同するな
じゃあ本物っぽいの置いとく
If Day(Date) = 25 Then
Sheets("salary").Visible = True
Call suzuki_magic
End If
>>68 偽コードくせえ
VBAならDate関数はいいけどsalaryシート直指定とsuzuki_magicが雑
釣るならもう少し勉強しろ
>>68 こういうのに釣られて給与確定とか言い出す奴が一番危ない
マジでソース出せ
>>69>>70 入れ食いだな
でも salary って名前の隠しシートある会社、絶対どこかにあるだろ
釣りは置いといて、給与っぽい単語が1個でも出たら検証環境以外で開くな
PIPだけは勘弁とか言ってる場合じゃない
優先順位は
1 外部リンク
2 Workbook_Open
3 隠しシート名
4 コメント署名
この順だな
作者推理より被害範囲推定が先
>>73 被害範囲を問うことは、存在範囲を問うことでもある
Excelはどこまで会社なのか
ハイデガーなら保存せず閉じる
>>1 が次やるならコピーを別PCかVMで開いて、マクロ無効でVBE確認
絶対に元ファイル直開きで有効化するな
DONT_TOUCHは警告灯だ
結局DONT_TOUCHとSuzukiと給与疑惑、全部まだ仮説だろ?
でも>>75の手順だけは同意
元ファイルで実行したら終わり
とりあえず元ファイルは触らずコピー3つ作った
共有からローカル、USB、検証用VMのスナップショット
今VMでマクロ無効で開いてる
>>77
技術的に言うとその時点でだいぶ正解
次はThisWorkbookと標準モジュールの先頭だけ見ろ
Workbook_Openに何かあったら即スクショ案件
>>77
バックアップ作った証拠は?
また嘘松実況じゃないだろうな
ファイル名とかパスは出すなよ、でも根拠は出せ
おじさんだけど、バックアップ3つは、いいね!(笑)
昔はFDに保存して、ラベル貼ってたからね(^_^)
でも、開く時のドキドキは今も同じだな(汗)
古参的にはこうなんだよ
ここで焦って有効化する奴から順に社内伝説になる
>>1はまず処理順だけ抜け、実行は最後でいい
ThisWorkbook見た
Workbook_Openは空
ボタン押下っぽいSub Run_All()があって
1 collect
2 normalize
3 paste_board
4 print_preview
の順にCallしてる
>>82
paste_boardで草
処理順だけ見るとデータ集計して掲示用レイアウトに貼って印刷プレビューだな
salaryより社内掲示物生成マクロっぽい
>>82
本当か?
paste_boardって名前が都合よすぎるだろ
ソースは?コメント1行でもいいから伏せて出せ
昨日乗せた客がな、丸の内仲通りから大手町交差点までずっと社内掲示の話してたんだよ
当番表をExcelで作って誰も触れないって
酔っ払いはタチ悪いけど、会社のExcelも同じくらいタチ悪いと思ったわ
>>82
collect、normalize、paste、print、なるほどね(^_^)
おじさんの会社だと、これを全部、手でコピーしてたよ(笑)
マクロ君、有能かもしれないね
まあ俺に言わせればな、関数名が英語で揃ってる時点で作者は雑だけど業務は見えてる
怖いのは外部リンクと保存先だ
掲示物でもメール送信とか共有上書きが混ざると面倒
外部リンクはなしっぽい
参照設定も標準だけ
ただpaste_boardの中で「掲示板貼付」ってシートに貼ってる
印刷範囲がA1:H42固定
>>88
A1:H42固定なら完全に印刷前提
技術的に言うとデータ処理マクロじゃなく帳票生成マクロ
PrintPreviewで止めてるなら自動印刷テロでもない
>>88
「っぽい」じゃなく確認しろよ
Workbook.ConnectionsとQueryTablesも見たか?
外部リンクなしって言い切る根拠あんの?
>>90
そこ突くのは正しい
ただ流れ的には給与疑惑より掲示物説が強い
このスレも変わったな、釣りコードから検証スレになってる
掲示板貼付、名前がそのまますぎて、逆に安心するね(^_^)
でも、DONT_TOUCHって書いた人の気持ちも、少しわかるなあ
壊されたら、毎月おじさんが徹夜だもんね(汗)
昨日乗せた客がな、神田警察通りで降りる時に「印刷範囲だけは絶対動かすな」って電話してたんだよ
たぶんExcel担当ってどこの会社にもいる
運転手から見ると、みんな同じ顔でExcelに追われてる
VMでコピー実行した
出力されたプレビュー、3階の休憩室に貼ってある「今月の当番表」と一致した
色と罫線もそのまま
変な通信とかファイル作成は今のところ見えてない
>>94
勝ち筋見えたな
仕組みとしては元データから当番表を生成してるだけっぽい
次は入力元シートと更新手順をREADME化して、元ファイルは保全でいい
>>94
一致したって誰が確認したんだよ
写真出せとは言わんが、掲示物のタイトルとか日付は?
はいはいソースなしね、にはまだ早いか
>>94
古参的にはこうなんだよ
謎マクロの正体が業務の生命線だった時、作者探しより引き継ぎ書が先
Suzuki探偵団はいったん解散な
掲示物の右下に小さく「作成: 総務」って出てる
あとコメントにあった日付と同じ年度のフォルダに、古い版が何個かあった
もう少し履歴見る。変な汗出てきた
古い版のプロパティ見た
作成者、俺の旧PC名だった
あと標準モジュールの最後に「未来の俺へ 触るな」ってコメントあった
ごめんこれ作者たぶん俺
>>99
マジで?
ソースは?って言いたいけど旧PC名は強すぎるだろ
お前が一番ソースだったのかよ