複数のexcelを1つのexcelの複数のsheetに統合する方法
1635 ワード
問題シナリオ
データベース・テーブルは複数ありますが、各テーブルにexcelが1つ存在するため、ファイル量が大きくなります.使いやすいように、複数のexcelを1つに統合し、各テーブルを1つのsheetとし、sheet名は元のファイル名で命名する必要があります.
解決策
1.JavaはApache POIパッケージがあってexcelに対して操作することができて、まだはっきりしていないで、後でコードを貼ります.2.excel独自のVBプログラミングを使用します.EXcelで右クリックsheetで「コードを表示」のオプションが表示され、プログラミングインタフェースが開き、次のコードをコピーしてポイントに入って実行すればいいです.
注意事項
1.sheetには31文字まで必要なので、表名の長さが間違っていることに注意してください.2.excelバージョンに注意してください.xlsとxlsxの2つのフォーマットのファイルがあります.
データベース・テーブルは複数ありますが、各テーブルにexcelが1つ存在するため、ファイル量が大きくなります.使いやすいように、複数のexcelを1つに統合し、各テーブルを1つのsheetとし、sheet名は元のファイル名で命名する必要があります.
解決策
1.JavaはApache POIパッケージがあってexcelに対して操作することができて、まだはっきりしていないで、後でコードを貼ります.2.excel独自のVBプログラミングを使用します.EXcelで右クリックsheetで「コードを表示」のオプションが表示され、プログラミングインタフェースが開き、次のコードをコピーしてポイントに入って実行すればいいです.
注意事項
1.sheetには31文字まで必要なので、表名の長さが間違っていることに注意してください.2.excelバージョンに注意してください.xlsとxlsxの2つのフォーマットのファイルがあります.
Sub Books2Sheets()
'
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
'
Dim newwb As Workbook
Set newwb = Workbooks.Add
With fd
If .Show = -1 Then
'
Dim vrtSelectedItem As Variant
'
Dim i As Integer
i = 1
'
For Each vrtSelectedItem In .SelectedItems
'
Dim tempwb As Workbook
Set tempwb = Workbooks.Open(vrtSelectedItem)
'
tempwb.Worksheets(1).Copy Before:=newwb.Worksheets(i)
' , xls , Excel97-2003 , Excel2007, xlsx
newwb.Worksheets(i).Name = VBA.Replace(tempwb.Name, ".xls", "")
'
tempwb.Close SaveChanges:=False
i = i + 1
Next vrtSelectedItem
End If
End With
Set fd = Nothing
End Sub