UiPath Excelで書式設定を行う方法

2020年2月20日

この記事ではUiPathでExcelのフォントや文字位置など

書式設定を変更する方法を紹介します。

手順

今回もマクロを併用します。

(マクロは作成済みで掲載しています)

まずExcel アプリケーションスコープを設置し、

書式設定したいブックをパスに指定します。

このブックはマクロ有効ブック(xlsm)でなくて構いません。

そしてVBA の呼び出しを中に設置します。

そしてVBA の呼び出しのコードファイルのパスに

こちらを解凍したファイル(マクロ)を指定します。

シーケンスの設置例

他のプロパティも設定しますが、

この記事で用意したマクロは画像の設置位置を

書式設定の内容によって内容が変わります。

フォント名、サイズ、太字設定

VBAの呼び出しの入力プロパティにコレクションで設定します。

配列・コレクションの構文作成ツール

エントリメソッド名動作エントリメソッドのパラメータ
SettingFontNameフォント・シート名(文字列)
・セルアドレス(文字列)
・フォント名(文字列)
SettingFontSizeサイズ・シート名(文字列)
・セルアドレス(文字列)
・フォントサイズ(数値)
SettingFontBold太字・シート名(文字列)
・セルアドレス(文字列)
・論理値(設定ならTrue、解除ならFalse)
フォントの設定例
フォントの設定例
{"Sheet1", "A1","メイリオ"}
サイズの設定例
サイズの設定例
{"Sheet1", "A1",255,0,0}
太字の設定例
太字の設定例
{"Sheet1", "A1",true}
{"Sheet1", "A1",false}

文字色・背景色設定

VBAの呼び出しの入力プロパティにコレクションで設定します。

配列・コレクションの構文作成ツール

エントリメソッド名動作エントリメソッドのパラメータ
SettingFontColor文字色・シート名(文字列)
・セルアドレス(文字列)
・文字色赤(数値0~255)
・文字色緑(数値0~255)
・文字色青(数値0~255)
SettingBgColor背景色・シート名(文字列)
・セルアドレス(文字列)
・文字色赤(数値0~255)
・文字色緑(数値0~255)
・文字色青(数値0~255)
SettingBgColorClear背景色クリア・シート名(文字列)
・セルアドレス(文字列)
文字色の設定例
文字色の設定例
{"Sheet1", "A1",255,0,0}
背景色の設定例
背景色の設定例
{"Sheet1", "A1",255,0,0}
背景色クリアの設定例
背景色クリアの設定例
{"Sheet1", "A1"}

文字位置設定

VBAの呼び出しの入力プロパティにコレクションで設定します。

配列・コレクションの構文作成ツール

エントリメソッドのパラメータは

シート名とセルアドレスのみ設定します。

エントリメソッド名動作
SettingHorizontal_XlLeft横位置:左詰め
SettingHorizontal_XlLeft横位置:標準
SettingHorizontal_XlCenter横位置:中央揃え
SettingHorizontal_XlRight横位置:右詰め
SettingHorizontal_XlFill横位置:繰り返し
SettingHorizontal_XlJustify横位置:両端揃え
SettingHorizontal_XlCenterAcrossSelection横位置:選択範囲内で中央
SettingHorizontal_XlDistributed横位置:均等割り付け

配列・コレクションの構文作成ツール

文字位置の設定例
文字位置の設定例
{"Sheet1", "A1"}

マクロ(formatting.bas)の中身

'フォント名
Sub SettingFontName(sheetName As String, cellAddress As String, fontName As String)
    Worksheets(sheetName).Range(cellAddress).Font.Name = fontName
End Sub

'文字色
Sub SettingFontColor(sheetName As String, cellAddress As String, r As Long, g As Long, b As Long)
    Worksheets(sheetName).Range(cellAddress).Font.Color = RGB(r, g, b)
End Sub

'フォントサイズ
Sub SettingFontSize(sheetName As String, cellAddress As String, fontSize As Long)
    Worksheets(sheetName).Range(cellAddress).Font.Size = fontSize
End Sub

'太字
Sub SettingFontBold(sheetName As String, cellAddress As String, bold As Boolean)
    Worksheets(sheetName).Range(cellAddress).Font.bold = bold
End Sub

'背景色設定
Sub SettingBgColor(sheetName As String, cellAddress As String, r As Long, g As Long, b As Long)
    Worksheets(sheetName).Range(cellAddress).Interior.Color = RGB(r, g, b)
End Sub

'背景色クリア
Sub SettingBgColorClear(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).Interior.ColorIndex = 0
End Sub

'横位置:左詰め
Sub SettingHorizontal_XlGeneral(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlGeneral
End Sub

'横位置:標準
Sub SettingHorizontal_XlLeft(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlLeft
End Sub

'横位置:中央揃え
Sub SettingHorizontal_XlCenter(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlCenter
End Sub

'横位置:右詰め
Sub SettingHorizontal_XlRight(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlRight
End Sub

'横位置:繰り返し
Sub SettingHorizontal_XlFill(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlFill
End Sub

'横位置:両端揃え
Sub SettingHorizontal_XlJustify(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlJustify
End Sub

'横位置:選択範囲内で中央
Sub SettingHorizontal_XlCenterAcrossSelection(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlCenterAcrossSelection
End Sub

'横位置:均等割り付け
Sub SettingHorizontal_XlDistributed(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).HorizontalAlignment = xlDistributed
End Sub


'縦位置:上詰め
Sub SettingVertical_XlTop(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).VerticalAlignment = xlTop
End Sub

'縦位置:中央揃え
Sub SettingVertical_XlCenter(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).VerticalAlignment = xlCenter
End Sub

'縦位置:下詰め
Sub SettingVertical_XlBottom(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).VerticalAlignment = xlBottom
End Sub


'縦位置:両端揃え
Sub SettingVertical_XlJustify(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).VerticalAlignment = xlJustify
End Sub

'縦位置:均等割り付け
Sub SettingVertical_XlDistributed(sheetName As String, cellAddress As String)
    Worksheets(sheetName).Range(cellAddress).VerticalAlignment = xlDistributed
End Sub

関連記事

UiPath Excel関連アクティビティの記事一覧