
レンジがあります(下の画像)。
その点に注意してください:
- 範囲は別のアプリケーションによって生成されるため、行数は常に変化し、Excel の「テーブル」としてフォーマットされていません。
- ただし、列の数は固定されています。
Totals
常に最後の行となる行が存在します(ただし、これ以降のセルには '' と評価される数式が含まれます)
ヘッダーをキーとして使用して範囲を並べ替える VBA マクロに関するヘルプが必要ですD
(昇順):
[下記のソートされた表へのリンクを参照]
その点に注意してください:
- 行
Totals
(常に最後の行) は無視され、並べ替えられません。
この並べ替えの後、同じ VBA マクロを使用して、キーと同じヘッダーを使用して範囲に条件付き書式を適用します。書式設定により、同じD
範囲の周囲に境界線が適用されます。D
最終テーブルはこちら:http://goo.gl/H118Lx
その点に注意してください:
D
ヘッダー内の一意の値、つまりセル値の数が 1 より大きくない行の周囲に境界線を表示したくありません。
答え1
VBA はまったく必要ありません。条件付き書式の柔軟性をより深く理解するだけで十分です。そのため、質の低い質問ではありますが、この質問に答えることにします。
そのまま列で並べ替えることができD
、空白の行が 1 つだけある場合は合計行が下部に表示されます。次に示すように、条件付き書式を列全体に適用します。
書式: 左に罫線 範囲
:A:A
数式:=AND($D1<>"",OR($D1=OFFSET($D1,-1,0),$D1=OFFSET($D1,1,0)))
書式: 右側の境界線 範囲
:E:E
数式:=AND($D1<>"",OR($D1=OFFSET($D1,-1,0),$D1=OFFSET($D1,1,0)))
書式: 上部に罫線 範囲
:A:E
数式:=AND($D1<>"",$D1<>OFFSET($D1,-1,0),$D1=OFFSET($D1,1,0))
書式: 下部に境界線 範囲
:A:E
数式:=AND($D1<>"",$D1=OFFSET($D1,-1,0),$D1<>OFFSET($D1,1,0))
このメソッドにより、このシートは次のようになります。
...このシートに: