2016-05-02 52 views
0

一連のシートのデータをマスターにコピーして1つの場所でデータを分析できるマクロがあります。インポートされたデータはよく定義された列に存在するので、サンププロダクトの式を使用してレポートを生成できます。Excelの空白セルを無視する名前指定範囲

私はデータの各列に名前を付けるために名前付き範囲を使用していますので、Sum製品のそれぞれでSheets!A1参照を使用する必要はありません。しかし、データはインポートされる内容に応じてサイズが変更されるため、名前付き範囲は列A2:A1048576全体のサイズになります。これは、サンプ製品が稼動するのに永遠にかかります。

名前付き範囲をデータが入っているセルだけに限定する方法はありますか?それらは常に上位n行になります(各実行でインポートされるデータの量によって異なります)。

また、この機能を実現するためのより良い/簡単な方法がありますか?

+2

これを参照してください:https://support.microsoft.com/en-us/kb/830287 –

+0

これが役立つかどうかわかりませんが、Excelでは「空白に移動してください"は、Ctrl + G、" Special "、" Blanks "を押します。たぶんあなたはすべてをコピーすることができます、そして、あなたはこれを "空白に移動"し、各結果を削除します(右クリック、 "削除"、 "シフトセルを上または左")。 – Dominique

+0

@ Dominique- OPは動的な名前付き範囲を必要とし、シートが変更されると変更されます – Davesexcel

答えて

0

直接セル参照の代わりに式を使用して、範囲名を動的にすることができます。

あなたは範囲名がA2で開始し、列Aのデータの最後の行に拡張したい場合は、列Aがテキストを持っている場合は、使用してこの式

を使用することができます

=Sheet1!$A$2:INDEX(Sheet1!$A:$A,MATCH("zzzzzzz",Sheet1!$A:$A,1)) 

列Aは、番号を持っている場合、データと最後の行の行番号を返すであろう

=Sheet1!$A$2:INDEX(Sheet1!$A:$A,MATCH(99^99,Sheet1!$A:$A,1)) 

これらの式中のマッチ()関数を使用し、指数関数は、T用セル参照が返され列Aの帽子行

関連する問題