プロが教える店舗&オフィスのセキュリティ対策術

Excelの罫線ボタンで引ける線は2種類ですが、細い方を選んでも上司には気に入られず、「太い」といわれます。そこで表を作るたびに 「メニューバー」→「書式」→「セル」の手順で線を引かなくてはなりません。

Excelの初期設定を変更して、ツールバーの罫線ボタンをクリックしただけで一番細い線が引けるようにはできないでしょうか?

よろしくおねがいいたします。

A 回答 (4件)

初期設定では無理だと思いますが、マクロを使用してなら


ツールバーにそのような処理をするボタンを登録することは可能です。

【方法】
・最初にマクロを登録します。
(1)「ツール」→「マクロ」→「●新しいマクロの記録」で任意のマクロ名を設定し「OK」を押す
(2) 適当なセルで罫線の設定を行う (「メニューバー」→「書式」→「セル」をやる)
(3)「ツール」→「マクロ」→「■記録終了」

・次にツールーバーを設定します。
(4)「メニューバー」→「表示」→「ツールバー」→「ユーザー設定」を選択しダイアログを表示
(5)”コマンド”タブの左側の”分類”の”新しいメニュー”を選択
(6)”コマンド”タブの右側の”新しいメニュー >” をツールバー上にドラッグ&ドロップ
(7)”コマンド”タブの右下の”選択したボタンの編集”が使用可能になるので、クリックします。
(8)任意の名前を設定し、”マクロの登録”を選択
(8)作成したマクロを選択し「OK」を押す
    • good
    • 0
この回答へのお礼

ありがとうございました。
マクロでできるらしいことはわかっていたのですが本のとおりにやってもできませんでした。
今回のあなた様のアドバイスがシンプルかつ丁寧でしたのでひとつクリアーできました。ありがとうございました。

お礼日時:2002/11/19 08:45

すいません、補足です。


各コマンドの「.ColorIndex = xlAutomatic」の行は不要です。
それと、線の種類を表すコード等、マクロの参考になるURLを
付けておきます。

参考URL:http://www.sigoto.co.jp/excel/
    • good
    • 0

罫線ボタンで線種まで選択できるといいのですが。


私も同じように、一番使うのが「細かい点々の線」なので、
業を煮やして(笑)マクロを組んでツールバーにしてしまいました。
#1さんの回答にあるように、「マクロの記録」を元にしてアレンジしたものです。
ネットを探せば、マクロのヒントはいろいろ転がってますので、
これを機に挑戦してみるのもいいかと思います。(実は私がそうでした)
参考までに私の使っているマクロを書いておきます。
「ツール」→「マクロ」→「Visual Basic Editor」で
「VBA Project(personal.xls)」に標準モジュールを挿入し、
そこにペーストしてください。(このあたり分かりにくかったら、すいませんが
マクロ関連のHP等を参考にして下さい。すいません。)
これで、いつExcelを開いても使えます。
私はそれぞれをカスタムコマンドボタンに登録して、ツールバーとして使用しています。
(これも登録の仕方は割愛します。説明が必要でしたら補足でお願いします。)

ここからマクロ------------------------------------

Sub lunder()
'
' セル範囲の一番下に罫線を引きます
'
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With

End Sub
Sub lleft()
'
' セル範囲の一番左に罫線を引きます
'
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With

End Sub
Sub lright()
'
' セル範囲の一番右に罫線を引きます
'
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With

End Sub
Sub ltandu()
'
' セル範囲の一番上と一番下に罫線を引きます
'

With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With

End Sub
Sub linside()
'
' セル範囲の内側のタテヨコに罫線を引きます
'
Dim arow As Integer, acolumn As Integer
arow = Selection.Rows.Count
acolumn = Selection.Columns.Count


If arow + acolumn = 2 Then
MsgBox "2つ以上のセルを選択して下さい", vbExclamation
'1つのセルを選択した場合、内部がないのでメッセージボックスで警告します

ElseIf arow = 1 Then '列が1列しかない場合
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With

ElseIf acolumn = 1 Then '行が1行しかない場合
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With


Else
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
End If
End Sub

Sub lhinside()
'
' セル範囲の内側の横罫線を引きます
'
Dim arow As Integer
arow = Selection.Rows.Count


If arow = 1 Then '1列しかない場合警告を出します
MsgBox "2列以上選択して下さい", vbExclamation

Else
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
End If
End Sub
Sub lvinside()
'
'セル範囲の内側の縦罫線を引きます
'
Dim acolumn As Integer
acolumn = Selection.Columns.Count


If acolumn = 1 Then '1行しかない場合警告を出します
MsgBox "2行以上選択して下さい", vbExclamation

Else
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlHairline
.ColorIndex = xlAutomatic
End With
End If
End Sub

--------------------------------------------------
お役に立てるといいのですが。
    • good
    • 0
この回答へのお礼

ありがとうございました。色々資料を作って会社に提案するために毎日がExcelの勉強です。
かなり専門的なアドバイスをいただき今後おおいに役立ちそうです。
本当にありがとうございました。

お礼日時:2002/11/19 08:53

初めまして。


>そこで表を作るたびに「メニューバー」→「書式」→「セル」の手順で線を引かなくてはなりません。
表が違えば、罫線の引き方も違うので表を作る度にこの操作をするのはやもえないと思います。
#1のご回答の方法で、マクロの操作をすると、同じ表の場合はいいのですが、違った表の場合には変なところに罫線が引かれてしまいますのでお気よつけ下さい。
    • good
    • 0
この回答へのお礼

ありがとうございました。
そのへんも念頭にいれておいてチャレンジしようと思います。

お礼日時:2002/11/19 08:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!