[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Sheetを移動してコピー』(rss)
お世話になります。
Sheetを挿入してから、書式等のコピーをすると
行幅と列幅等が上手く行かないので
Sheetを右クリックし移動またはコピーをすると
行幅と列幅等が上手くいきます。
そこで、記録してみたのですが、上手くいきません。
コピー元のSheets("AAA")は、デスクトップの
C:\Documents and Settings\CCC\デスクトップ\AAA.xlsにあります。
Sheets("AAA")のbookを開かずにActiveSheetの右側に移動またはコピーを
するには、どうすればいいですか?
宜しくお願い致します。
Sub Macro1()
Application.WindowState = xlMinimized Sheets("AAA").Select Sheets("AAA").Copy After:=Workbooks("BBB.xls").Sheets(2) End Sub
開かずにコピーすることは無理だと思います。(ROUGE) Sub test() Dim wb As Workbook, flg As Boolean, ws As Worksheet On Error Resume Next Application.ScreenUpdating = False Set ws = ActiveSheet Set wb = Workbooks("AAA.xls") flg = (wb Is Nothing) If flg Then Set wb = Workbooks.Open(CreateObject("WScript.Shell").SpecialFolders("DeskTop") & "\AAA.xls") End If Err.Clear On Error GoTo 0 wb.Sheets("AAA").Copy After:=ws If flg Then wb.Close(False) Application.ScreenUpdating = True End Sub
諦めていたのですが、回答して下さり、本当に有り難うございます。
ここで wb.Sheets("AAA").Copy After:=ws
実行エラー9 インデックスが有効範囲にありません
と、出ます。
申し訳ありませんが、どのようにしたらいいでしょうか?
宜しくお願い致します。
(rss)
AAA.xlsというファイルがデスクトップにないか、もしくはAAA.xlsにAAAというシートがないか、どちらかだと思いますが。。。 (ROUGE)
>もしくはAAA.xlsにAAAというシートがないか
シート名が間違っていたので、直しました。
すると同じ所で
実行エラー91 オブジェクト変数または、Withブロック変数が設定されていません。
と、出ます。
たびたび申し訳ありませんが、宜しくお願い致します。
(rss)
一度下記コードを実行してみてください。(ROUGE) Sub test() Dim wb As Workbook, flg As Boolean, ws As Worksheet On Error Resume Next flg = (wb Is Nothing) If flg Then Set wb = Workbooks.Open(CreateObject("WScript.Shell").SpecialFolders("DeskTop") & "\AAA.xls") End If Err.Clear On Error GoTo 0 MsgBox IIf(wb Is Nothing, "AAA.xlsが見つかりませんでした", "OKです") End Sub
コピペを繰り返しているうちにおかしくなり
最初からやり直したら、出来ました。
お手数かけしまして、大変申し訳ありませんでした。
すばらしいコード本当に有り難うございました。
感謝致します。
(rss)
1番右に挿入したいのですが、上手くいきません。
宜しくお願い致します。
wb.Sheets("請求額").Copy after:=ws(Worksheets.Count)
(rss)
念のためお聞きしますが、シート挿入するのはこのマクロがあるBookで良いですね?(ROUGE) Sub test() Dim wb As Workbook, flg As Boolean On Error Resume Next Application.ScreenUpdating = False Set wb = Workbooks("AAA.xls") flg = (wb Is Nothing) If flg Then Set wb = Workbooks.Open(CreateObject("WScript.Shell").SpecialFolders("DeskTop") & "\AAA.xls") End If Err.Clear On Error GoTo 0 wb.Sheets("AAA").Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) If flg Then wb.Close(False) Application.ScreenUpdating = True End Sub
>シート挿入するのはこのマクロがあるBookで良いですね?
説明が無く、申し訳ありません。
UserformのCommandbuttonで、実行しょうと思います。
(rss)
思いどおりに出来ました。
>(CreateObject("WScript.Shell").SpecialFolders("DeskTop") & "\AAA.xls")
ここの所がフルパスを書かなくてもいいので、すごく楽で勉強になりました。
何度も対応して下さり、本当に有り難うございました。
(rss)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.