シート間の転記 | |
---|---|
[196534] シート間の転記- ■親トピック/記事引用/メール受信=OFF■ □投稿者/ 山岡 -(2025/04/26(06:43)) □U R L/ この度、ある競技会が発足、その記録簿を作ろうとしています。 開催の都度、結果シートが来るのですが、 その結果を台帳に転記する部分でお願いしたいのです。 私のレベルでは、会員の名前でループさせるしか浮かびません。 多分、もっとスマートな方法?があるのではとのお願いです。 <条件>です。 1.結果シートから記録シートへ結果を転記する。 結果シート;@会員名:A2から全角、A結果:B2から数字 並びは結果の降順 記録シート;@会員名:B6から全角、A結果:C6から数字 並びは入会順 2.会員名は両シートで相違はないので、マッチングキーに使える。 3.不参加者の結果は来ない。飛び入りはない。 4.現在の会員数は50人、今後も増える。 以上、宜しくお願いします。 ++++++++++++++++++++ OS ⇒Windows 11 Version⇒Excel 2003 ++++++++++++++++++++ |
[196538] Re[1]: シート間の転記- ■記事引用/メール受信=OFF■ □投稿者/ kazuo -(2025/04/26(18:25)) □U R L/ 別スレへの回答で The server refuse to browse the page. が出てしまうのでtestの意味も含め応答しています。 vlookup関数が良いでしょう2003でも使えます。 ttps://support.microsoft.com/ja-jp/office/vlookup-%E9%96%A2%E6%95%B0-0bbc8083-26fe-4963-8ab8-93a18ad188a1 |
[196539] Re[2]: シート間の転記- ■記事引用/メール受信=OFF■ □投稿者/ kazuo -(2025/04/26(18:26)) □U R L/ うむ、投稿できるな。 Sub test() Const 結果シート = "結果シート" '要変更 Const 記録シート = "記録シート" '要変更 Dim 検索値 As Range Dim 検索範囲 As Range Dim 列番号 As Range Dim r記録 As Range With Worksheets(結果シート) Set 検索範囲 = .Range(.Range("A2"), .Cells(.Rows.Count, "A").End(xlUp)).Resize(, 2) Set 列番号 = .Range("B2") End With With Worksheets(記録シート) Set 検索値 = .Range("B6") Set r記録 = .Range(検索値, .Cells(.Rows.Count, "B").End(xlUp)) With r記録.Offset(, 1) .Formula = "=vlookup(" & 検索値.Address(0, 0) & "," & 検索範囲.Address(external:=True) & "," _ & 列番号.Column - 検索範囲.Column + 1 & ",false)" .Value = .Value End With End With End Sub この記事にはVBAのコードが含まれています。 緑の太文字→注釈 茶色の太文字→条件分岐 赤の太文字→ループ 青の太文字→その他 |
[196545] Re[3]: シート間の転記- ■ ![]() □投稿者/ 山岡 -(2025/04/26(19:41)) □U R L/ kazuo様、素晴らしい。 一発で動いてしまいました。 今は驚きですが、後でゆっくり勉強させていただきます。 ありがとうございました、お世話になりました。 |
このトピックに書きこむ |
---|