
No.2ベストアンサー
- 回答日時:
こんばんは。
まずは基本的なことの確認をします。
・Excelへの参照設定はできていますよね?
できてないなら、「ソリューションエクスプローラ」から該当のプロジェクトを右クリックし、
「参照の追加」から「COM」タブで「Excel 12.0 Object Library」を選択して「OK」をクリックし
ておいてください。
・VBでExcelを操作するのはなかなかやっかいです。Excelのマクロの記録は役には立ちますが
そのままでは使用できません。
・また、いちいち「Select」しなくても罫線くらいは引けます。
以下のコードは、新しいExcelを開いてブックを追加し、Sheet1のA1:B2のセル範囲を太罫線で囲みます。
Imports Microsoft.Office.Interop.Excel
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim AppExcel As New Microsoft.Office.Interop.Excel.Application
AppExcel.Visible = True
Dim WB As Workbook
WB = AppExcel.Workbooks.Add
Dim WS As Worksheet
WS = WB.Worksheets(1)
With WS.Range("A1:B2")
With .Borders(XlBordersIndex.xlEdgeLeft)
.LineStyle = XlLineStyle.xlContinuous
.ColorIndex = XlColorIndex.xlColorIndexAutomatic
.TintAndShade = 0
.Weight = XlBorderWeight.xlThick
End With
With .Borders(XlBordersIndex.xlEdgeTop)
.LineStyle = XlLineStyle.xlContinuous
.ColorIndex = XlColorIndex.xlColorIndexAutomatic
.TintAndShade = 0
.Weight = XlBorderWeight.xlThick
End With
With .Borders(XlBordersIndex.xlEdgeBottom)
.LineStyle = XlLineStyle.xlContinuous
.ColorIndex = XlColorIndex.xlColorIndexAutomatic
.TintAndShade = 0
.Weight = XlBorderWeight.xlThick
End With
With .Borders(XlBordersIndex.xlEdgeRight)
.LineStyle = XlLineStyle.xlContinuous
.ColorIndex = XlColorIndex.xlColorIndexAutomatic
.TintAndShade = 0
.Weight = XlBorderWeight.xlThick
End With
End With
End Sub
End Class
参照設定というのは全く分かっていませんでした。
Selectはエラーになるので、withステートメントを使わずに1行で
xlSheet.Range("A1:B10").Borders(xlInsideVertical).Weight = xlHairline
というようにして対処していました。ichhabehungerさんのやり方は考えもしてませんでした。
おかげ様で何とかなりそうです。
ありがとうございました。

No.1
- 回答日時:
sub a()
sheets("sheet1").activate
range("A1").currentregion.select 罫線引き始めるrange 指定
selection.borders(xlleft).linestyle=xlcontinuous 左側指定
selection.borders(xlright).linestyle=xlcontinuous 右側部指定
selection.borders(xltop).linestyle=xlcontinuous 上部指定
selection.borders(xlbottom).linestyle=xlcontinuous 下部指定
end sub
xlcontinuous 実線 xldashdot 1点鎖線 xldot 点線
xldash 破線 xlfashdotdot 2点鎖線 xldouble 二重線
xlslantdashdot 斜点線 xllinestylenone なし
回答ありがとうございます。
さらに色々と調べてみたところ、
Const xlDiagonalDown As Long = 5
Const xlDiagonalUp As Long = 6
Const xlEdgeLeft As Long = 7
Const xlEdgeTop As Long = 8
Const xlEdgeBottom As Long = 9
Const xlEdgeRight As Long = 10
Const xlInsideVertical As Long = 11
Const xlInsideHorizontal As Long = 12
Const xlContinuous As Long = 1
Const xlDashDot As Long = 4
Const xlDashDotDot As Long = 5
Const xlSlantDashDot As Long = 13
Const xlDash As Long = -4115
Const xlDot As Long = -4118
Const xlDouble As Long = -4119
Const xlLineStyleNone As Long = -4142
Const xlHairline As Long = 1
Const xlThin As Long = 2
Const xlThick As Long = 4
Const xlMedium As Long = -4138
という定数を宣言していないことが分かり、試したらうまくいきました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル連番自動印刷について
-
VBA Shapes コピーと名前
-
【Excel】マクロでページを追加...
-
エクセルファイルを値でのみし...
-
EXCEL上にコマンドボタン...
-
エクセル 図形の寸法を取得したい
-
セルに入力するたびにマクロを...
-
エクセル:他人の作ったマクロ...
-
Excelでマクロ実行中に画面を固...
-
エクセルVBAで納期管理システム...
-
【マクロ】元データと同じお客...
-
VBAで保存しないで閉じると空の...
-
エクセル関数>参照ファイル名...
-
WPSOffice_マクロの有効化について
-
Excel マクロの編集がグレーに...
-
【Excel VBA】マクロでExcel自...
-
エクセルのvbaにて thisworkboo...
-
エクセルで、「いいね」のよう...
-
エクセル ボタンに設定したマク...
-
【Excel】マクロの保存先について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA Shapes コピーと名前
-
エクセルファイルを値でのみし...
-
Excelでマクロ実行中に画面を固...
-
セルに入力するたびにマクロを...
-
エクセル連番自動印刷について
-
エクセル マクロ写真帳に一括で...
-
【Excel】マクロでページを追加...
-
エクセル 図形の寸法を取得したい
-
ブックの共有でVBAエラー
-
EXCEL VBA 他のアプリケーショ...
-
ExcelのVBAコードについて教え...
-
worksheet_changeの一時無効化
-
エクセルVBAで納期管理システム...
-
【ExcelVBA】マクロブックを通...
-
マクロを教えてください
-
VBA 選択したデータを別シー...
-
エクセル2013 bookのダブル起動
-
Excel2000 マクロの不具合?
-
エクセルファイルの回数期限の...
-
エクセル/マクロのエラー・・・・
おすすめ情報