- ベストアンサー
罫線が引かれているセルの個数を調べるには
OFFICE2003エクセルで指定した範囲内に特定の罫線(斜線)が引かれているセルの個数を調べる方法は無いでしょうか?宜しくお願い致します。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
マウスで範囲を指定して以下のマクロを実行してみてください。 Sub a() Dim range As Excel.range Dim item As Excel.range Dim cntD As Integer Dim cntU As Integer Set range = Selection For Each item In range If item.Borders(xlDiagonalDown).LineStyle <> xlNone Then cntD = cntD + 1 End If If item.Borders(xlDiagonalUp).LineStyle <> xlNone Then cntU = cntU + 1 End If Next MsgBox ("右肩下がりの斜線=" & cntD) MsgBox ("右肩上がりの斜線=" & cntU) End Sub
その他の回答 (3)
- hallo-2007
- ベストアンサー率41% (888/2115)
解決したみたいですが、一応、一般機能案です。 必要なデータを空いている列にコピィします。 コピィした列選択して、置き換え を実行 ウィザードの中のオプションクリック 検索する文字列の書式をクリック 希望の罫線を選択 置き換える文字に ? など使用していない文字いれて 全て置き換えを実行 あとでCOUNTIF関数で ? の和を数えます。
- imogasi
- ベストアンサー率27% (4737/17069)
(1)エクセル関数で出来ると思って質問しているなら、エクセルのキホンの不知。関数では罫線の有無は余ら得られません。 (2)罫線にも、セルの上下左右の罫線、斜線、外枠線などがありそれを区別して質問してないのは、問題が十分見えてない証拠。 一般にはVBAでやることになる。 VBAで説明を受けるよりも、罫線が引いてあるのは、どういうセルなのか、その特徴について、元のセルの値の関係などで説明や考え直せないのか、考えるべき。 質問に状況を補足を。
- nattocurry
- ベストアンサー率31% (587/1853)
マクロでやるしかないんじゃないですかねぇ。 調べたい範囲を選択した状態で、 Sub test() Dim r, x For Each r In Selection If r.Borders(xlDiagonalDown).LineStyle <> xlNone Or r.Borders(xlDiagonalUp).LineStyle < xlNone Then x = x + 1 End If Next r MsgBox x End Sub を実行。
お礼
早速の返答ありがとうございます。イメージ通りに出来ました。助かりました。ありがとうございます。
お礼
早速の返答ありがとうございます。しかしまぁ~皆さん凄いですね~!イメージ通りに出来ました。助かりました。ありがとうございました。