[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/09/09(Thu) 18:45
投稿者名:ももたろう
Eメール:
URL :
タイトル:
複数のExcelファイルの値コピー
複数のExcelファイルの中から、A列が空白の行のものを全て"新規抽出一覧.xls"にコピーし、
A列が空白行の一覧表を作りたいのですが下記コード中の***の箇所が分かりません。
単純にcopy、pasteではできないし、クリップボードを使った方がいいのかなど最適な方法と
書き方又は、参考URLなど、教えて下さい。
(クリップボードはまだ使ったことがなく、よくわからないので自分でも調べてみますが。)
よろしくお願いします。

    '新規抽出一覧.xlsを開く
        Set xlApp = CreateObject("Excel.Application")
        Set xlBook = xlApp.Workbooks.Open(sSeishikiPath & "\" & "新規抽出一覧.xls")
        Set xlSheet = xlBook.Worksheets(1)
        
        '一番最後にsheet追加
        xlApp.Worksheets.Add After:=Sheets(Sheets.Count)    '一番最後にsheet追加
        sSheetname = Replace(Date, "/", "") & Replace(Time, ":", "")    '追加するsheet名
        iSheet = Sheets.Count   'sheet数
        Sheets(iSheet).Name = sSheetname    '追加したsheet名変更
        
        For i = 0 To iCount3 - 1
            Set xlApp = CreateObject("Excel.Application")
            Set xlBook = xlApp.Workbooks.Open(sExcelPath & "\" & sTargetFile2(i).file)
            Set xlSheet = xlBook.Worksheets(1)
              
            '何行データがあるか?
            xlSheet.Range("B1").End(xlDown).Select    '最終行までスクロール
            row = xlApp.ActiveCell.row    'データのある最終行

            '新規があるか?
            For a = 3 To (row - 1)
                If xlSheet.Range("A" & a).Value = "" Then   'A列に空白セルがあるか?
          '*******************
          'ここでA列に空白セルがあったらその行を前の処理で作った
          '新規抽出一覧.xlsのsSheetnameシートにコピーしたいです
          '*******************
                Else
                    xlSheet.Range("A" & a).End(xlDown).Select   '空白行分スクロール
                    y = xlApp.ActiveCell.row   '空白行の最終行
                    'スクロールしたセルの1行前のセルが空白でないなら処理行を飛ばす
                    If xlSheet.Range("A" & y - 1).Value <> "" Then
                        a = y
                    End If
                End If
            Next
        Next

投稿時間:2004/09/13(Mon) 10:13
投稿者名:るしぇ
Eメール:
URL :
タイトル:
Re: 複数のExcelファイルの値コピー
>単純にcopy、pasteではできないし、
…なんで??
Copy メソッドで引数 Destination に xlApp から指定してもできない?

投稿時間:2004/09/13(Mon) 11:31
投稿者名:ももたろう
Eメール:
URL :
タイトル:
Re^2: 複数のExcelファイルの値コピー
> >単純にcopy、pasteではできないし、
> …なんで??
> Copy メソッドで引数 Destination に xlApp から指定してもできない?

多分書き方が悪くてできなかったと思います。なので、そのやり方はあきらめ、
配列に格納してExcelに貼り付けるようにしようと思います。

ありがとうございました。