見出し画像

分数だけ伏字にするよ

この説明は、ChatGPTで作成しています。

このプロシージャは、Excelのセル内にある「○分」の形式の分数を「●分」に置き換えるためのものです。以下に仕組みをわかりやすく説明します。

  1. 画面更新の停止: 最初に `Application.ScreenUpdating = False` を使用して、処理中の画面更新を停止します。これにより、処理が早くなります。

  2. 正規表現オブジェクトの作成: `CreateObject("VBScript.RegExp")` を使って正規表現を扱うためのオブジェクトを作成します。

  3. 正規表現の設定: `With reg` ブロック内で正規表現のパターンを設定します。このパターンは「1~2桁の数字の後に '分' が続く」文字列を見つけるためのものです。

  4. エラー処理: `On Error Resume Next` により、エラーが発生してもプログラムが停止しないようにします。

  5. セルの値をループ処理: 選択範囲内の各セルをループし、それぞれのセルの値を取得します。正規表現を使って「○分」を「●分」に置き換え、セルに新しい値を設定します。

  6. 画面更新の再開: 最後に `Application.ScreenUpdating = True` を使用して画面更新を再開します。

このプロシージャは、選択したセル範囲に含まれる「○分」をすべて「●分」に置き換える簡単な方法です。


Conceal Only Minutes

This explanation is created with ChatGPT.

This procedure replaces the minute part in the format "○分" within the cells of Excel with "●分". Here’s an easy-to-understand explanation of how it works:

  1. Stopping screen updates: First, it uses `Application.ScreenUpdating = False` to stop screen updates during the process, which speeds up the operation.

  2. Creating a regular expression object: It creates an object for handling regular expressions using `CreateObject("VBScript.RegExp")`.

  3. Setting the regular expression: Within the `With reg` block, it sets the regular expression pattern. This pattern is to find strings in the format "1-2 digits followed by '分'".

  4. Error handling: Using `On Error Resume Next`, it ensures that the program does not stop even if an error occurs.

  5. Loop through cell values: It loops through each cell in the selected range, retrieves the cell value, uses the regular expression to replace "○分" with "●分", and sets the new value back to the cell.

  6. Restarting screen updates: Finally, it uses `Application.ScreenUpdating = True` to restart screen updates.

This procedure is a simple way to replace "○分" with "●分" in the selected range of cells.

文字数: 774

Excel VBA リファレンス | Microsoft Learn

この記事のYouTube動画はこちら

この記事が気に入ったらサポートをしてみませんか?