Excel (VBA) |
![]() ![]() |
(Windows 10 Pro : Microsoft 365)
セル範囲を指定しなくてもコピーできないでしょうか
投稿日時: 23/07/12 10:00:43
投稿者: takatada72
|
---|---|
お疲れさまです。
|
![]() |
投稿日時: 23/07/12 10:30:29
投稿者: WinArrow
|
---|---|
引用: これもGPTにお願いしたら? |
![]() |
投稿日時: 23/07/12 10:40:04
投稿者: sk
|
---|---|
引用: それがどのブックのどのワークシートに含まれるセル範囲なのか、 具体的に明記されることをお奨めします。 ・そのマクロが記述されているモジュールを含むマクロ有効ブックにある 特定の名前を持つワークシート ・そのマクロが記述されているモジュールを含むマクロ有効ブックにある 何番目かのワークシート ・特定のフォルダに保存されている特定の名前を持つ ( 構築.xlsx でもなく、そのマクロ有効ブックでもない) ブックにある特定の名前を持つワークシート ・特定のフォルダに保存されている特定の名前を持つ ( 構築.xlsx でもなく、そのマクロ有効ブックでもない) ブックにある何番目かのワークシート ・ファイルダイアログによって選択された任意のブックにある 特定の名前を持つワークシート ・ファイルダイアログによって選択された任意のブックにある 何番目かのワークシート ・上記以外 |
![]() |
投稿日時: 23/07/12 10:44:51
投稿者: WinArrow
|
---|---|
GPTを使う前に
|
![]() |
投稿日時: 23/07/12 14:38:34
投稿者: takatada72
|
---|---|
WinArrowさん
|
![]() |
投稿日時: 23/07/12 14:52:16
投稿者: WinArrow
|
---|---|
コードの件は、別にして、
|
![]() |
投稿日時: 23/07/12 17:15:16
投稿者: simple
|
---|---|
>範囲としては、A2からNの最終行までの範囲になります。
|
![]() |
投稿日時: 23/07/12 22:14:24
投稿者: WinArrow
|
---|---|
引用: 誰が作ったものでも、コードの修正/変更は、あなたの仕事になります。 その都度、誰かに教えてもらうことができないと考えて方がよいです。 >Set rng = Selection Selectionとは、 コードを実行する時点で開いているブックの最前面のシートの選択したセル範囲 というようにExcel君は解釈します。 操作ミスがあったとしても、Excel君は、消化不良を起こさない限り処理します。 意図した結果にならないこともありえます。 Sectionだけでは、結果を保証されません。 どのブックのどのシートのセル範囲を指定する方法は、選択(Select)しなくてもできます。 コードを1行づつ、このコードは何をしてるのか? を理解するのは、マクロの記録が最適です。 |
![]() |
投稿日時: 23/07/13 08:28:59
投稿者: simple
|
---|---|
こちらの記事も参考になると思います。
|
![]() |
投稿日時: 23/07/13 18:02:27
投稿者: sk
|
---|---|
引用: Table.xlsx はどこに保存されているのでしょうか。 引用: ・そのマクロは、個人用マクロブック( PERSONAL.xlsb )内のモジュールに記述されている。 ・そのマクロに対し、[フィルター]コマンドと同じショットカットキーを割り当てている。 ということでしょうか。 引用: Table.xlsx を開く操作はご自身の手でされているのでしょうか。 |
![]() |
投稿日時: 23/07/18 16:59:36
投稿者: takatada72
|
---|---|
皆様、お忙しい中でのご確認をありがとうございました。
|
![]() |
投稿日時: 23/07/18 18:07:55
投稿者: 半平太
|
---|---|
こんなのでワークしませんか?
Dim 最終行 As Long Dim src As Range 最終行 = Cells(Rows.Count, 1).End(xlUp).Row Set src = Range(Cells(2, 1), Cells(最終行, 14)) With Workbooks.Open("\\共有\構築.xlsx").Sheets("貼付") src.Copy .Cells(.Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues, xlNone, False, False End With |
![]() |
投稿日時: 23/07/19 09:07:50
投稿者: takatada72
|
---|---|
半平太さん
|
![]() |
投稿日時: 23/07/19 10:03:13
投稿者: WinArrow
|
---|---|
引用: 1行だけ、掲示しても、回答者には、伝わりません。 全体のコードを掲示しませんか? |
![]() |
投稿日時: 23/07/19 10:36:20
投稿者: 半平太
|
---|---|
言っていることがちょっと解からないですね。
|
![]() |
投稿日時: 23/07/19 13:50:02
投稿者: takatada72
|
---|---|
私の報告の仕方が悪いせいで申し訳ありません。
|
![]() |
投稿日時: 23/07/19 14:44:59
投稿者: WinArrow
|
---|---|
太字のコードは不要です。
引用: この時点でアクテイブになっているブックとワークシートを確認してみてください。 意図するワークシートになっていない可能性があります。 Skさんのレスにある >それがどのブックのどのワークシートに含まれるセル範囲なのか を、無視していませんか? |
![]() |
投稿日時: 23/07/19 15:15:29
投稿者: takatada72
|
---|---|
WinArrowさん
|
![]() |
投稿日時: 23/07/19 16:22:27
投稿者: WinArrow
|
---|---|
引用: の前に、次のコードを記述して、確認してみてください。 Msgbox "(1)" & Activeworkbook.Name Msgbox "(2)" & ActiveworkSheet.Name |
![]() |
投稿日時: 23/07/19 16:25:38
投稿者: takatada72
|
---|---|
WinArrowさん
|
![]() |
投稿日時: 23/07/19 16:34:56
投稿者: takatada72
|
---|---|
こちらを追加して、実行すると、ファイルは、
|
![]() |
投稿日時: 23/07/19 17:33:51
投稿者: WinArrow
|
---|---|
引用: ↑、申し訳ありません。 MsgBox "(2)" & ActiveSheet.Name の間違いでした。 ところで この状態でならば、 構築.xlsxに追記されていると思いますが、 そちらの結果は如何がですか? |
![]() |
投稿日時: 23/07/19 18:35:49
投稿者: WinArrow
|
---|---|
太字のコードは不要
引用: それよりも、大事なことは 複写元となる、ブック、シートを明示することです。 |
![]() |
投稿日時: 23/07/20 09:38:50
投稿者: takatada72
|
---|---|
WinArrowさん
|
![]() |
投稿日時: 23/07/20 10:18:13
投稿者: WinArrow
|
---|---|
>"\\共有\構築.xlsx"
|
![]() |
投稿日時: 23/07/20 10:57:42
投稿者: takatada72
|
---|---|
WinArrowさん
|
![]() |
投稿日時: 23/07/20 14:14:19
投稿者: takatada72
|
---|---|
お疲れさまです。
|
![]() |
投稿日時: 23/07/20 15:17:03
投稿者: WinArrow
|
---|---|
想定する確認事項にういて、回答頂いたので、同名のブックをダブってOPENメソッドを実行するテストしてみました。
|
![]() |
投稿日時: 23/07/20 15:22:25
投稿者: simple
|
---|---|
特に問題なく実行できましたよ。
|
![]() |
投稿日時: 23/07/20 16:32:58
投稿者: takatada72
|
---|---|
みなさま、色々とご確認頂きましてありがとうございました。
|