1

私は使っている

ActiveCell.CurrentRegion.CreateNames top:=True, left:=False    

これは、上部の列に名前を付けるのに効果的です。これらの名前付き範囲をシートに対してローカルにする必要があります。Names.Add の代わりに CreateNames でこれを行う方法はありますか?

どんな助けでも大歓迎です。

4

1 に答える 1

2

デフォルトでは、Names created by のスコープCreateNamesは「ワークブック」です。

こんな感じですか?

ActiveCell.CurrentRegion.Name = ActiveSheet.Name & "!" & _
                                ActiveCell.Offset(-1).Value

ロジックは、スコープがその関連するシートにとどまるように、アクティブシートの名前を使用して直接名前を付けることです。.Offsetの補正にも使っていtop:=Trueます。それに応じて変更する必要があります。

使用することもできます

ActiveCell.CurrentRegion.Name = ActiveSheet.Name & "!" & _
                                Range(ActiveCell.CurrentRegion.Address).Cells(1, 1).Value

top:=True一番上の行のラベルを使用して名前を作成することを理解する必要があります。したがって、最初のセルにはテキスト値があると想定しています。

于 2013-09-11T15:59:34.067 に答える