- VB,VBA
- 2016-11-28 - 更新:2021-01-13
この記事は最終更新日から1年以上経過しています。
AccessからExcelを操作し、罫線等を設定する場合、私自身もいつも定数の値が何だったかいちいち調べているので、備忘録も兼ねて書いておきます。
まずは全体の流れ
Dim ws Dim xlApp As Object Dim xlBook As Object Dim xlSheet As Object Dim FileName As String Set ws = CreateObject("WScript.Shell") FileName = ws.SpecialFolders("Desktop") & "\雛形.xlsx" Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(FileName) Set xlSheet = xlBook.WorkSheets(1) With xlSheet 'このブロック内に書いていきます End With '保存 xlBook.Save xlBook.Close xlApp.Application.Quit Set xlSheet = Nothing Set xlBook = Nothing Set xlApp = Nothing
罫線を引く
.Range("A1:I1").Borders.LineStyle = 1 .Range("A1:I1").Borders(8).LineStyle = -4118 .Range("A1:I1").Borders(11).LineStyle = -4115 .Range("A1:I1").Borders(11).Weight = 1
定数 | 値 | |
---|---|---|
xlContinuous | 実線 | 1 |
xlDash | 破線 | -4115 |
xlDashDot | 一点破線 | 4 |
xlDashDotDot | 二点破線 | 5 |
xlDot | 点線 | -4118 |
xlDouble | 二重線 | -4119 |
xlLineStyleNone | 罫線なし | -4142 |
xlSlantDashDot | 斜線 | 13 |
定数 | 値 | |
---|---|---|
xlHairline | 極細 | 1 |
xlThin | 細 | 2 |
xlMedium | 中 | -4138 |
xlThick | 太 | 4 |
定数 | 値 | |
---|---|---|
xlDiagonalDown | 右下がり斜線 | 5 |
xlDiagonalUp | 右上がり斜線 | 6 |
xlEdgeBottom | 下辺 | 9 |
xlEdgeLeft | 左辺 | 7 |
xlEdgeRight | 右辺 | 10 |
xlEdgeTop | 上辺 | 8 |
xlInsideHorizontal | 内側の水平線 | 12 |
xlInsideVertical | 内側の垂直線 | 11 |
横位置、縦位置の指定
.Range("A1").Value = "Example Excel.Application." .Range("A1").HorizontalAlignment = -4108 '中央揃え .Range("A1").VerticalAlignment = -4108 '中央揃え .Range("A1").ShrinkToFit = True
定数 | 値 | |
---|---|---|
xlHAlignCenter | 中央揃え | -4108 |
xlHAlignDistributed | 均等割り付け | -4117 |
xlHAlignJustify | 両端揃え | -4130 |
xlHAlignLeft | 左詰め(インデント) | -4131 |
xlHAlignRight | 右詰め | -4152 |
xlHAlignCenterAcrossSelection | 選択範囲内で中央 | 7 |
xlHAlignFill | 繰り返し | 5 |
xlHAlignGeneral | 標準 | 1 |
定数 | 値 | |
---|---|---|
xlVAlignBottom | 下詰め | -4107 |
xlVAlignCenter | 中央揃え | -4108 |
xlVAlignDistributed | 均等割り付け | -4117 |
xlVAlignJustify | 両端揃え | -4130 |
xlVAlignTop | 上詰め | -4160 |
縮小して全体を表示する
.Range("A1").ShrinkToFit = False
折り返して全体を表示する
.Range("A1").WrapText = True
色指定
.Range("A1").Borders.Color = RGB(255, 0, 0)
また、指定する際にいちいち数値だと分かりにくいので定数を宣言しておくと分かりやすいです。
Const xlContinuous = 1 Const xlThick = 4
17,800 views