[[20020807113200]] 『VBAでピボットテーブルに名前を付ける』(hisao) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBAでピボットテーブルに名前を付ける』(hisao)

VBAでピボットテーブルに名前を付ける方法を教えてください。

いつも お世話になります。

VBAで何点かのピボットテーブルを作成した後、

他のテーブルのVLOOKUP関数値に このピボットテーブルを参照範囲にする際

それぞれのピボットテーブルに名前をつける方法を教えてください。

もう一点。

セレクトされた範囲が cells(a,b):cells(c,d)だったとします。

a,b,c,dは変数です。

範囲を変数で捉えた場合の 名前を挿入する方法を教えてください。 


 みやほりんが 未解決ログ解消を目的に 2010/04/10 9:50 ごろ、投稿しました。
 トピ主の[hisao]さんの投稿は2002/08/07 11:32:00でした。
 
ピボットテーブル作成をマクロで記録すると次のようなコードが得られます。
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "Sheet1!R1C1:R13C5").CreatePivotTable TableDestination:="", TableName:= _
        "ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10
 
このうち、CreatePivotTableメソッドの引数TableNameに任意の名前を指定することで
作成時に名前をつけることができます。
 
セル範囲を選択して名前を定義するという操作をマクロで記録すると
次のようなコードが得られます。
    Range("A13:C24").Select
    ActiveWorkbook.Names.Add Name:="test", RefersToR1C1:="=Sheet1!R13C1:R24C3"
 
このうち、RefersToR1C1:="=Sheet1!R13C1:R24C3" が名前を定義するセル範囲を指定する
引数なので、
Range(cells(a,b),cells(c,d))をこの範囲に指定したい場合は、
RefersToR1C1:="=Sheet1!R" & a & "C" & b & ":R" & c & "C" & d
のようにR1C1形式の行と列を表す数値を変数に置き換えて、R1C1形式のセル範囲を
表現する文字列を作成します。
 
(みやほりん)(-_∂)b

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.