With Bing 参照元のトレース全件

 

 WITH  

タイトル前に表示された # マークは、初版(第5版)掲載済の記事を一部、見直して、編集しています。

 

ネットで記事を読んでいると、最近はChatGPTを使って、プログラムを作成するハナシが出ている。ちょうど、そんな時、合計行は下の複数行の合計となる表を作成していて、また、この複数行が一定ではなく、1行のときもあれば、5行以上になるような表なのだ。そこで、合計行のSUM(A1:B5)の数式をいちいち書換をして終わったのだが、2000行近くあり、検証をしなければならない。それが、数千行に及ぶと、当然、入力モレが発生しているだろうことは、容易に想像できる。

上図の赤丸の付いた部分の計算式の参照範囲が正しいかどうかを判定したい

「参照元トレース」機能では1セルしかできない

 

本当はこうなって、計算式の入ったセル全件に対して実行したい

 

そこで、Excelの「参照元トレース」機能を使い、その合計値が正確に合計値を出すための範囲を参照しているかどうかの確認を行いたいのだが、この機能は1セル分しかできない。これでは数千行におよび同様の計算式の検証に時間がかかってしまう。これを1セルではなくて、計算式の入った全セルに対して行いたいと思ったわけだ。そうなると、マクロを作成する必要が出てくる。そこで、それならば、話題の「ChatGPT」でマクロを作ってみる実験をしてみることにした。まだ、ココロに余裕がある(笑)

 

質問文は「Excelde参照元のトレース 一括 マクロを教えて」とした

 

そうすると、解答のマクロ文を含めて、答えてくれる。そこで、このマクロ部分をコピペする。

 

 

Alt + F11 のショートカットキーでマクロ編集機能が立ち上がるので、上図では右の白い部分に貼り付ける。これで完成となる。

 

クロを起動する前に、計算式が入っている「列全体」を選択しておく

 

マクロを起動させる場合、「開発」-「マクロ」を選ぶと、別画面がポップアップする

 

計算式が入力されている部分に対し、「参照元のトレース」が実行されている

 

<参考:マクロ文>

Sub TracePrecedents()
    Dim rng As Range
    For Each rng In ActiveSheet.UsedRange
        If rng.HasFormula Then
            rng.ShowPrecedents
        End If
    Next rng
End Sub

ちょっと、話題のChatGPTを使ってのマクロ作成で、成功例だ。これはとても良さそうだ。併せて、無料のBingのテストもできている。

 
誰にも教えたくなかった Excel小技2
⬆こちらから、「Excel小技2」をまとめて参照可能です!!
​​​​​

 

 

【カテゴリ:誰にも教えたくなかった Excel小技(こわざ)2】
⬆ここでいままでに掲載された記事が読めます