| シート、セルを指定してセル値を入力 | |
|---|---|
[196313] シート、セルを指定してセル値を入力- ■親トピック/記事引用/メール受信=ON■ □投稿者/ ヤーボー -(2024/11/07(09:58)) □U R L/ Excelの元シートのあるセルに数値を入力し、その数値のシート名のセル値を元のシートの 指定セルに書きこむマクロを教えたください。 | |
[196315] Re[1]: シート、セルを指定してセル値を入力- ■記事引用/メール受信=OFF■ □投稿者/ 匿名 -(2024/11/07(17:27)) □U R L/ まずは、質問を具体的にしてください。 例) 1.Sheet1という名前のA1セルに、数値「1」を入力 2.Sheet1という名前のA2セルに、文字「A5」を入力 3.A2セルに文字を入力後、Enterキーを押すと、 1というシート名のA5セルの値を、Sheet1のA3セルに表示する という様に、書いてみてください。 そして、どの部分が分からないかを質問するようにしてください。 丸投げでは、自分でできるようにならないし、 後から追加や修正などのメンテナンスもできるようになりません。 | |
[196316] Re[2]: シート、セルを指定してセル値を入力- ■記事引用/メール受信=OFF■ □投稿者/ ヤーボー -(2024/11/08(08:17)) □U R L/ 1.Sheet1のセルC5に数値3を入力 2.ボタンXをクリックしたらモジュールWWWを実行するマクロを教えてください。 sub WWW() sheet3(Sheet1のセルC5のセル値)のセルA5のセル値をSheet1のセルE5 に書き込む End sub | |
[196317] Re[3]: シート、セルを指定してセル値を入力- ■記事引用/メール受信=ON■ □投稿者/ ヤーボー -(2024/11/08(11:26)) □U R L/ 前の投稿は意味がわからないので書き直します。 1.aaシートのセルC5に数値3を入力 2.ボタンXをクリックしたらモジュールWWWを実行するマクロを教えてください。 sub WWW() bb3(3はaaシートのC5セルのセル値)シートのセルA5のセル値をシートaaのセルE5 に書き込む End sub | |
[196318] (削除)- ■記事引用/メール受信=OFF■ □投稿者/ / -(2024/11/08(16:51)) □U R L/ この記事は削除されました | |
[196319] Re[5]: シート、セルを指定してセル値を入力- ■記事引用/メール受信=OFF■ □投稿者/ 匿名 -(2024/11/09(11:30)) □U R L/ 以下に2つサンプルを掲載します。
ちなみに、私がやるとしたら、「www2」の方です。
Sub www()
'sheet3(Sheet1のセルC5のセル値)のセルA5のセル値をSheet1のセルE5に書き込む
Worksheets("Sheet1").Range("E5").Value = Worksheets("sheet" & Worksheets("Sheet1").Range("C5").Value).Range("A5").Value
'【解説】
'@Worksheets("Sheet1").Range("E5").Value = → ワークシートの"Sheet1"というシート名のE5セルに対して値に代入せよ
'
'A"sheet" & Worksheets("Sheet1").Range("C5").Value
' → "sheet"という文字列と、Sheet1のC5セルの値をつなげた文字列(例:sheet3)を作成せよ
'
'BWorksheets("sheet" & Worksheets("Sheet1").Range("C5").Value).Range("A5").Value
' →ワークシートのAで作成された文字列(ワークシート名)のA5セルの値を取得せよ
'
'を1行で書いています
End Sub
Sub www2()
'sheet3(Sheet1のセルC5のセル値)のセルA5のセル値をSheet1のセルE5に書き込む
Dim shSrc As Worksheet
Dim shDst As Worksheet
Dim strSheetNo As String
Set shDst = Worksheets("Sheet1") ' "Sheet1"という名前のワークシートを「shSrc」という名前のワークシートオブジェクトとして扱え
strSheetNo = shDst.Range("C5").Value ' 「strSheetNo」という文字列型の変数に、ワークシートオブジェクト「shDst」のC5セルの値を代入せよ
Set shSrc = Worksheets("sheet" & strSheetNo) ' "sheet"という文字列と変数「strSheetNo」の値を文字列結合した結果のワークシート名のワークシートオブジェクトを「shSrc」として扱え
shDst.Range("E5").Value = shSrc.Range("A5").Value ' 「shSrc」というワークシートオブジェクトのA5セルの値を、「shDst」というワークシートオブジェクトのE5セルの値に代入せよ
Set shDst = Nothing 'ワークシートオブジェクト「shDst」の切り離し
Set shSrc = Nothing 'ワークシートオブジェクト「shSrc」の切り離し
End Subこの記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 | |
[196323] Re[6]: シート、セルを指定してセル値を入力- ■ □投稿者/ ヤーボー -(2024/11/18(08:12)) □U R L/ 返信がおそくなり申し訳ありませんでした。おかげさまで解決しました。 ありがとうございました。 | |
| このトピックに書きこむ |
|---|