投稿日 | : 2003/02/22(Sat) 11:09 |
投稿者 | : 新入生 |
Eメール | : |
URL | : |
タイトル | : Re^5: EXCEL の複写について |
実は 複数のPCで作成されたデータを集めて一つの集計シート表を作成しようとしています。
各EXCELファイルはそれぞれのPCで作成されており、メール受信などで集まってきます。
シートの名称やセルの場所は決めてあります。
約80〜90種類のEXCELファイルです。この中から指定したEXCELの表をピックアップし一つにまとめます。
集計シートを作成するにあたり、それぞれのリンクを貼ると膨大な量になってなります。
そこで、VBを使って指定Excelファイルのシートを選択し、まとめる方法にしました。
ピックアップしたファイルをセット
Label2.Caption = File1.Path & "\" & File1.FileName
'ファイルの有無を調べる
Dim MyFile As String
MyFile = Dir$("c:\temp\work1.xls")
If Len(MyFile) > 1 Then
'ファイルを削除する
Kill "c:\temp\work1.xls"
File1.Path = MyPath
File1.Refresh
End If
On Error Resume Next
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Set xlApp = Excel.Application
Set xlBook = xlApp.Workbooks.Open(Label1.Caption)
Set xlSheet = xlBook.Worksheets(1)
xlApp.Visible = False
Dim CNT As Integer
Dim XX As Integer
For CNT = 1 To 40
XX = (CNT * 2) + 7
SelectTmp = "B" & XX & ":C" & XX & "," & "X" & XX & ":AF" & XX & ","
SelectTmp = SelectTmp & "AF" & XX + 1 & "," & "AG" & XX & "," & "AG" & XX + 1 & ","
SelectTmp = SelectTmp & "AH" & XX & ":AI" & XX
With xlSheets
.Range(SelectTmp).Select
End With
xlsobj.Application.Selection.Copy
xlsobj.Worksheets("新規シート").Select
xlsobj.Worksheets("新規シート").Paste
Next CNT
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
と、ここまで書いてありますが、(色々と記述を変えてたので、)意味不明箇所は削除しました。
支店ごとの会員管理のようなものです。
出力をテキストにしようかACCESSのMDBにするか、それともそのままEXCELに複写しするか…
わからなくなってきてます。
良い方法があれば教えてください。