Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6293 / 13646 ツリー ←次へ | 前へ→

【46102】選択した(された)セルに対して一括で罫線を引く よし 07/1/22(月) 23:31 質問[未読]
【46103】Re:選択した(された)セルに対して一括で罫... かみちゃん 07/1/22(月) 23:50 発言[未読]
【46111】やりたかったこと よし 07/1/23(火) 8:26 発言[未読]
【46112】Re:やりたかったこと ひげくま 07/1/23(火) 8:52 発言[未読]
【46146】Re:やりたかったこと よし 07/1/24(水) 12:39 お礼[未読]

【46102】選択した(された)セルに対して一括で罫線...
質問  よし  - 07/1/22(月) 23:31 -

引用なし
パスワード
   みなさん、こんばんわ。よしです。

仕事でよくDBのテーブルをエクセルに貼り付けたりするのですが、
今回したいのは「アクティブセル領域の升目に一括で罫線を引きたい」のです。

Range("B2").CurrentRegion.Bordersのようにすればアクティブセル領域を、
罫線を引く対象とできるようなのですが、基点が固定ではない場合に、どのようにすれば実現できるのか分かりませんでした。

お忙しいとは存じますが、お知恵を拝借できないでしょうか?
よろしくお願い致します。

【46103】Re:選択した(された)セルに対して一括で...
発言  かみちゃん  - 07/1/22(月) 23:50 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>今回したいのは「アクティブセル領域の升目に一括で罫線を引きたい」のです。
>
>Range("B2").CurrentRegion.Bordersのようにすればアクティブセル領域を、
>罫線を引く対象とできるようなのですが、基点が固定ではない場合

基点が固定でないという意味がよくわからないのですが、
まずは、特定のセル範囲に罫線を引く方法は、「マクロの記録」で記録してみてください。
あとは、アクティブセルについては、
 ActiveCell
を使って
 ActiveCell.CurrentRegion.Borders
のような使い方になります。

今回は、DBのテーブルを貼り付けた場合のようですから、大丈夫かと思いますが、
CurrentRegion
は、「空白行と空白列で囲まれたセル範囲」ですので、注意が必要です。
以下のようなデータの場合、A1からB3のいずれかがアクティブの場合、セル範囲は
A1:B3(4行目全体とC列全体が空白になっているため)となります。

  A   B   C   D
1 AAA  BBB      DDD
2 CCC
3     EEE
4
5     FFF

【46111】やりたかったこと
発言  よし  - 07/1/23(火) 8:26 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>今回したいのは「アクティブセル領域の升目に一括で罫線を引きたい」のです。
>>
>>Range("B2").CurrentRegion.Bordersのようにすればアクティブセル領域を、
>>罫線を引く対象とできるようなのですが、基点が固定ではない場合
>
>基点が固定でないという意味がよくわからないのですが、
>まずは、特定のセル範囲に罫線を引く方法は、「マクロの記録」で記録してみてください。
>あとは、アクティブセルについては、
> ActiveCell
>を使って
> ActiveCell.CurrentRegion.Borders
>のような使い方になります。
>
>今回は、DBのテーブルを貼り付けた場合のようですから、大丈夫かと思いますが、
>CurrentRegion
>は、「空白行と空白列で囲まれたセル範囲」ですので、注意が必要です。
>以下のようなデータの場合、A1からB3のいずれかがアクティブの場合、セル範囲は
>A1:B3(4行目全体とC列全体が空白になっているため)となります。
>
>  A   B   C   D
>1 AAA  BBB      DDD
>2 CCC
>3     EEE
>4
>5     FFF

かみちゃんさん。お返事ありがとうございます。
ちょっと勘違いして質問したいことと違うことを質問していたようです・・。

本来やりたかったことは、選択されたセル範囲に対して、一括で罫線を引くには
どうすればいいのか?ということでして、分からなかったのは、セルを選択した
ときにどうすればRangeに指定するアドレスを取得できるのかということでした。

アクティブセルの意味を勘違いしており、ご迷惑をお掛けしました。

【46112】Re:やりたかったこと
発言  ひげくま  - 07/1/23(火) 8:52 -

引用なし
パスワード
   ▼よし さん:
こんにちは。

>本来やりたかったことは、選択されたセル範囲に対して、一括で罫線を引くには
>どうすればいいのか?ということでして、分からなかったのは、セルを選択した
>ときにどうすればRangeに指定するアドレスを取得できるのかということでした。

結局、解決したのでしょうか?

かみちゃんさんが書いたように、「マクロの記録」で、やりたい動作を記録してみてください。
それをやってみて、それでも解らなかったら、改めて質問すると良いでしょう。

【46146】Re:やりたかったこと
お礼  よし  - 07/1/24(水) 12:39 -

引用なし
パスワード
   返事が遅くなりました。あのあと、いろいろ調べなおしまして

Selection.Borders.LineStyle = xlContinuous

と書けば目的の動作が得られることが分かりました。

かみちゃんさん、どうもありがとうございました。
また力をお借りする時はよろしくお願い致します。

6293 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free