- 締切済み
Excel・・・表の何も記入のない部分だけ罫線が表示されない方法
Excelで罫線で表を作ることはできるのですが、表の中に余白のできる部分ができます。この余白部分を消去して表を完成させる方法を教えてください。つまり表の何も記入のない部分だけ罫線が表示されない方法を教えてください。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17070)
#4です。 #4のVBAコードの最後に Range(Cells(dm + 1, "A"), Cells(100, "H")).Select Selection.ClearFormats の2行を付け加えてください。抜けていました。 データ最下行より下の罫線を消すため必要。
- imogasi
- ベストアンサー率27% (4737/17070)
質問者の安易なイメージで、すぐここに質問しているでは無いかな、と思う。 エクセルには、1つのセルの周りに4場所の罫線引けるが、それをどういう場合に消せばよいか、文章で質問者が表現してみてご覧。 多分収集が付かなくなるのではないかな。 むしろパズル的な数理に詳しい人の見るカテに質問して、考え方を教えてもらったほうが、良いと思う。 質問者もどういう場合に罫線を消すというのか、何も言ってない質問では無いですか。 そのロジックというか(大げさだが)アルゴリズムが判れば、VBAで考えることになろう。 ==== VBAででもやらないと難しいのではないのかな。 私の言うことが判らないかもしれないので、例を挙げておく。 ーー 例データA1:G8 -は空白セルを意味す。左寄せ表示防止のため。 テスト時には必ず空白にすること。 A-G列 a e r t u u b f r t f - h c 1 r t f f d 2 r t - f f e 3 - t f 4 - - - - g - 5 - r - 6 ーー A1:G8を範囲指定して、書式ーセルー罫線で、範囲全体に、田の字の罫線を引く ーー コード 標準モジュールに Sub test02() Dim cl As Range dm = 1 For i = 1 To 10 d = Cells(65536, i).End(xlUp).Row dm = Application.WorksheetFunction.Max(dm, d) Next i '--- For i = 1 To dm c = Cells(i, "IV").End(xlToLeft).Column For j = 10 To c + 1 Step -1 Cells(i, j).Borders(xlEdgeRight).LineStyle = xlNone If Cells(i, j) = "" And Cells(i + 1, j) = "" _ And Cells(i + 1, "IV").End(xlToLeft).Column < j Then Cells(i, j).Borders(xlEdgeBottom).LineStyle = xlNone End If Next Next i End Sub これを実行して、残った罫線について、質問者のイメージどおりかどうか考えてみてください。 === 自戒 (1)質問の意味を、小生が取り違えている恐れもある。 (2)上記で、私はパズル的といったが、もし良いやり方を、どなたか知っていると、劇的に判りやすく、コード数も少なく、正確なやり方が出現する可能性もなくは無い。 (3)多様な場合が考えられるので、ある程度にしろ、テストデータを多数作りにくい。それでバグがある恐れもある。
- kuma56
- ベストアンサー率31% (1423/4527)
>つまり表の何も記入のない部分だけ罫線が表示されない方法を教えてください。 ・・・・つまり本来罫線の枠は30データ分用意してあるけど、中身のデータが上から15データまでしか入っていないときは、下半分の罫線枠は表示せずに、白い余白状態にしたい・・・・っと言う事かな?? それならば先の回答にもあるように、条件付き書式を設定してやればできるでしょう。 表の見出しなどは通常の罫線で作っておき、データ入力欄は条件付き書式で条件をその行のセルにデータがある場合等にしておき、書式で必要な罫線を設定すれば可能でしょう。 ただし、条件の設定を気をつけないと、データの途中に空白行があると票の一部だけ罫線が抜けるかもしれませんね。 (その行以下にデータがあれば・・・っというような設定がいいかも)
- maron--5
- ベストアンサー率36% (321/877)
◆条件付き書式で罫線の設定をすれば可能かも ★具体的な表のイメージが不明なので、抽象的な回答になります
- hallo-2007
- ベストアンサー率41% (888/2115)
>余白部分を消去して表を完成させる方法 と >表の何も記入のない部分だけ罫線が表示されない方法 とでは 表が違うと思いますが。 表 [品名 ] [りんご] [空白 ] [みかん] を [品名 ] [りんご] [みかん] ということであれば オートフィルターで 空白以外のセル を選べばいいと思いますが。 質問と違ったら失礼します。