Excel2010 複数シートコピーのマクロエラー
初めて投稿します。
職場でExcel 2000 から Excel 2010へ切り替えがあり
今まで問題なく利用していたマクロがエラーになってしまいました。
修正をして使用したいのですが
マクロ初心者で色々とネットで検索して
ヒントを探ってみたものの
検索の方法がいけないようで、修正方法が見つけられない状態です。
ファイル内にいくつかのシートがあるのですが
シート名に「A」と付くシート数がその都度異なります。
そのシート「*A」とその他のシートをコピーして
新しいファイルとして保存したいのですが
コピーする段階で
【実行時エラー '-2147417848(80010108)’
Copyメゾットは失敗しました;sheetsオブジェクト】
というエラーになってしまいます。
どのように修正すればよいか
教えていただけないでしょうか。
Sub Macro3()
Dim SH As Worksheet
Dim strString As String
Dim sSH1(10) As String
Dim sSH2(30) As String
Dim i As Integer
Worksheets("開始").Activate
sSH1(1) = "あ"
sSH1(2) = "い"
sSH1(3) = "う"
sSH1(4) = "え"
sSH1(5) = "お"
IngCnt = 1
For Each SH In Worksheets
If SH.Name Like "*A*" Then
sSH2(IngCnt) = SH.Name
IngCnt = IngCnt + 1
End If
Next
If IngCnt = 1 Then
strString = sSH1(1)
Else
strString = sSH2(IngCnt - 1)
End If
For i = IngCnt To 30
sSH2(i) = strString
Next i
'↓ここでエラーになります
Sheets(Array(sSH1(2), sSH1(3), sSH1(4), sSH1(5), sSH2(1), sSH2(2), sSH2(3), sSH2(4), _
sSH2(5), sSH2(6), sSH2(7), sSH2(8),sSH2(9), sSH2(10), sSH2(11), sSH2(12), _
sSH2(13), sSH2(14), sSH2(15), sSH2(16), sSH2(17), sSH2(18), sSH2(19), sSH2(20), _
sSH2(21), sSH2(22), sSH2(23), sSH2(24), sSH2(25), sSH2(26), sSH2(27), sSH2(28), _
sSH2(29), sSH2(30))).Copy
ActiveWorkbook.SaveAs Filename:="C:\Users\monkey-cr\Desktop\こぴ3.xls", _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
というマクロです。
自宅でも同じようにやってみたのですが
やはりエラーになります。
ただコピーするシート数を減らすと問題なく動くので
エラーメッセージの言うようにシート(数)に問題があるという事までは
分かったのですが
「では、どうする?」というのが…。
勉強不足ですいません。
お礼
お礼が遅れて本当に申し訳ありませんでした。 回答をありがとうございました。 シートのテキストが大きすぎるのPCが固まってしまうため 実現できませんでしたが、勉強になりました。