CDの保有枚数を教えてください

OSはwin11 エクセルはoffice365です。

ご指導をいただきたいのは、
下記の参考、
 1の最終行の値を、2の最終行の次の行に転記です。

条件
 ※列幅 A~H
 ※1、2のブックは並列にウィドウズに表示
 ※参照図のように転記
 ※ブック2のA列は、mm/aa(aaa)

参考
1 ブック名 2024 外国為替 / シート名 Data /A B C D E F H列
 ※4行目の値、若しくは入力された最終行の値を2に転記
 ※ パス "C:\Users\04524\デスクトップ\keep\2024 外国為替.xlsm"

2 ブック名 2024 株価情報 / シート名 為替 /A B C D E F H列
 ※4行目の値、若しくは入力された値の最終行の次の行に1からの値を転記
 ※ パス "C:\Users\04524\デスクトップ\keep\2024 株価取得.xlsm"

宜しくお願いします。

「vba 別ブックに転記」の質問画像

質問者からの補足コメント

  • どう思う?

    補足要求です。
    1.マクロは、どちらのブックに格納するのでしょうか。
     ※ ①2024 外国為替.xlsm(転記元)

    2.転記先のブック名は、
     ※ 2024 株価取得.xlsm

    3.マクロを格納しないブックは、
     ※ ①予め、オープンされている(マクロはオープンしない。クローズもしない)

    4.提示された画像をみると、A列~I列までありますが、
     ※ A列~I列でそれ以降は転記しない

    宜しくお願いいたします

    No.1の回答に寄せられた補足コメントです。 補足日時:2024/09/09 08:03
  • どう思う?

    念のために追加補足
    それぞれれのシート名です
    パス "C:\Users\04524\デスクトップ\keep\2024 外国為替.xlsm"
     ※ シート名 Data

    パス "C:\Users\04524\デスクトップ\keep\2024 株価取得.xlsm"
     ※ シート名 為替

      補足日時:2024/09/09 08:34
  • どう思う?

    マクロを標準モジュールに登録して試しました
    上手くできませんでした

    私が気になるのは、

    ブック名 2024 外国為替 / シート名 Data  
     のデータの取得は、
     ※ メニューバーの データ Webから
     取得しています
      関係ありますか

    No.3の回答に寄せられた補足コメントです。 補足日時:2024/09/09 09:22
  • HAPPY

    ありがとうございました。
    株価取得 為替シートを新たに作りなおしたら上手くできました

    No.4の回答に寄せられた補足コメントです。 補足日時:2024/09/09 09:52

A 回答 (5件)

>株価取得 為替シートを新たに作りなおしたら上手くできました



了解しました。他に問題点がなければ、閉じてください。
    • good
    • 0
この回答へのお礼

解決しました

お礼日時:2024/09/09 12:02

>※ メニューバーの データ Webから 取得しています


>  関係ありますか

申し訳ありません。office365は使用してので判りませんが、
データを取得した後で、マクロを起動するのでしたら、どこから取得したかは、関係ありませんので、エラーとは関係ないと思われます。

うまく行きませんでしたと言うことですが、
どのようにうまく行かなったのでしょうか。
エラーとなって、マクロが停止した場合は、
どの行で、止まってますか。又、その時のエラーメッセージは何が表示されていますか。

株価取得.xlsmをオープンした状態でマクロを実行されていますか。
(外国為替.xlsmは。マクロを実行するのでオープンされているはず)
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとうございました。
為替シートを新たに作成しなしましたら上手くできました

お礼日時:2024/09/09 09:57

No2です。


両ブックともに、オープンされた状態から、マクロを起動するので、
両ブックのパス名をマクロは意識しません。
従って、No2のようなマクロになります。
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとう

お礼日時:2024/09/09 10:00

以下のマクロを標準モジュールに登録してください。



Option Explicit
Public Sub 最終行転記()
Dim ws1 As Worksheet '転記元シート
Dim ws2 As Worksheet '転記先シート
Dim lastrow1 As Long
Dim lastrow2 As Long

Set ws1 = ThisWorkbook.Worksheets("Data")
Set ws2 = Workbooks("2024 株価取得.xlsm").Worksheets("為替")
lastrow1 = ws1.Cells(Rows.Count, 1).End(xlUp).row '転記元 最終行を求める
lastrow2 = ws2.Cells(Rows.Count, 1).End(xlUp).row '転記先 最終行を求める
If lastrow1 < 4 Then Exit Sub
If lastrow2 < 3 Then Exit Sub
ws2.Cells(lastrow2 + 1, 1).Resize(1, 8).Value = ws1.Cells(lastrow1, 1).Resize(1, 8).Value
End Sub
    • good
    • 0
この回答へのお礼

Thank you

お礼日時:2024/09/09 09:54

補足要求です。


1.マクロは、どちらのブックに格納するのでしょうか。
①2024 外国為替.xlsm(転記元)
②2024 株価情報.xlsm(転記先)
③上記以外のブック
①、②、③のどれでしょうか。

2.転記先のブック名は、
2024 株価情報.xlsm ですか、それとも
2024 株価取得.xlsm ですか。どちらが正しいのでしょうか。

3.マクロを格納しないブックは、
①予め、オープンされている(マクロはオープンしない。クローズもしない

②マクロがオープンし、処理完了後、マクロがクローズする。
①、②のどちらでしょうか。

4.提示された画像をみると、A列~I列までありますが、
転記するのは、A列~H列で良いのでしょうか。(I列及びそれ以降は転記しない)
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとう

お礼日時:2024/09/09 10:00

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A