オートメーション道場

RPAツール「Automation 360」(旧Automation Anywhere A2019) の使い方についてまとめていきます。

R1C1形式とA1形式の列番号を変換する

R1C1形式とA1形式の列番号を変換する

Automation Anywhere A2019にてExcelを扱う場合に、R1C1形式の列名 (数字)からA1形式の列名 (アルファベット)をするにはVBScriptで変換ロジックを指定して行います。

 

目次

 

VBScriptを使う方法

VBScriptを呼び出す方法を使ってR1C1形式の列名 (数字)からA1形式の列名 (アルファベット)に変換します。

 

解法:

  1. 数字型変数 $x$を作成しておきます。初期値は27にしておきます。
  2. VBScript : 開く」アクションを配置します。
  3. アクションの詳細パネルで以下を指定します。
    • VBScript」は「手動インポート」を選択。
    • 「ここにスクリプトを入力します」には以下を設定。

      Function ConvertToLetter(iCol)
        Dim iAlpha
        Dim iRemainder
        iAlpha = Int(iCol / 27)
        iRemainder = iCol - (iAlpha * 26)
        If iAlpha > 0 Then
          ConvertToLetter = Chr(iAlpha + 64)
        End If
        If iRemainder > 0 Then
          ConvertToLetter = ConvertToLetter & Chr(iRemainder + 64)
        End If
      End Function

  4. 保存します。
  5. VBScript: 関数を実行」アクションを配置します。
  6. アクションの詳細パネルで以下を指定します。
    • 「実行する関数の名前を入力します」は「ConvertToLetter」と入力。
    • 「関数への引数」には「x - 数字」を設定。
    • 「出力を変数に代入」には「prompt-assignment - 文字列」を指定。
  7. 保存します。
  8. VBScript: 閉じる」アクションを配置して、保存、実行します。
  9. 「メッセージボックス : メッセージボックス」アクションを配置してアクションの詳細パネルの「表示するメッセージを入力します」に $prompt-assignment$ を指定します。
  10. 保存して実行します。

結果:

「AA」と表示されます。

 

 

 

オートメーション道場