1

1 つのワークシートに定数データを含む複数の名前付き範囲があります。別のワークシートに、名前付き範囲の 1 つがコピーされるターゲット範囲があります。

コピーされる名前付き範囲は、他のセルへのユーザー入力に基づいて選択されます。関連する名前付き範囲の名前を単一のセルに作成することができました。

私ができないこと (私は、VBA を使用せずにこれらすべてを実行できると考えていた VBA 初心者なので!)、関連するセルを読み取るマクロを作成し、読み取った名前範囲をターゲット範囲にコピーすることです。 .

どんな援助も謙虚にそして感謝して受け入れます.

4

3 に答える 3

2

たとえば、範囲の名前はMyRange

したがって、範囲をコピーするには、これを行う必要があります

Range("MyRange").Copy

Sheet1ここで、のセルA1に単語が含まれていると仮定しMyRangeます。このようなシナリオでは、を使用してセルA1の値を取得できます。Range("A1").Value

それで

Range("MyRange").Copy

になります

Range(Range("A1").Value).Copy

これが完全な例です。Sheet2のセルA1と言うためにコピーしたいと思います

Sub Sample()
    Dim wsI As Worksheet, wsO As Worksheet

    Set wsI = ThisWorkbook.Sheets("Sheet1")
    Set wsO = ThisWorkbook.Sheets("Sheet2")

    wsI.Range(wsI.Range("A1").Value).Copy wsO.Range("A1")
End Sub
于 2012-08-31T04:46:14.293 に答える
0

それが必要かどうかはわかりませんが、たとえばA1セルのコンテンツをsheet1からsheet2にコピーする必要がある場合は、次のようにします。

Plan2.Cells(1, 1).Value = Plan1.Cells(1, 1).Value

コードをサブにカプセル化することもできます。

Sub copyvalues()
Plan2.Cells(1, 1).Value = Plan1.Cells(1, 1).Value
End Sub

...そして最後に、onclick()イベントを使用してサブを起動するボタンを挿入する必要があります(モジュールに割り当てる必要があります)

申し訳ありませんが、私の悪い英語、それがあなたを助けることを願っています。

于 2012-08-31T04:55:19.377 に答える
0
Public Function copyNamevalues(srcName As Name, destName As Name)
    srcName.RefersToRange.Cells.Copy (destName.RefersToRange.Cells)
End Function
于 2013-09-24T15:03:30.273 に答える