プロが教えるわが家の防犯対策術!

Excel VBAはまだ初心者なので、よくわかっていないのですが、複数シートを別ファイルにコピーして保存したいと思っております。

下記は、一番左のシートだけをB1に書かれ値で別ファイルとして保存できるようなものをつくってみました。ここから、左から1番目と2番目だけをコピーして、同じようにファイル名を指定して保存したいと考えていますが、全くうまくいかず・・・。

お手数ですが、どこを修正すべきなのかをおしえていただけますでしょうか。

よろしくお願いいたします。

Sub SheetSave()

Dim xSheet As Worksheet
Dim myFile As String
Dim myName As String

Set xSheet = ActiveSheet

'一番左のファイルのコピー
ThisWorkbook.Worksheets(1).Copy after:=ThisWorkbook.Worksheets(1)

myFile = ThisWorkbook.Path & "\" & xSheet.Range("B1").Value & ".xlsx"
Application.DisplayAlerts = False
ActiveSheet.SaveAs fileName:=myFile
Application.Dialogs(xlDialogSaveAs).Show
Application.DisplayAlerts = True
ActiveWorkbook.Close

End Sub

A 回答 (2件)

シート2枚まとめて1つのブックにコピーということなら



Sub SheetSave2()
  Const N As Long = 2
  Dim myFile As String
  Dim myName As String
  Dim mySh(1 To N) As String
  Dim i As Integer

  myFile = ThisWorkbook.Path & "\" & ActiveSheet.Range("B1").Value & ".xlsx"

  '左から N番目までのシートをコピー
  For i = 1 To N
    mySh(i) = Sheets(i).Name
  Next
  Sheets(mySh).Copy

  Application.DisplayAlerts = False
  ActiveWorkbook.SaveAs Filename:=myFile
  Application.DisplayAlerts = True
  ActiveWorkbook.Close
End Sub
    • good
    • 1
この回答へのお礼

ご連絡が遅くなりまして、申し訳ございませんでした。
まさにこれがやりたかった処理です。
本当にありがとうございました。
まだまだ初心者なのでわからないことばかりですが、今回の回答を参考に勉強させていただきます。

お礼日時:2017/05/06 14:04

コードの内容と質問とは違うようですね。



>ThisWorkbook.Worksheets(1).Copy after:=ThisWorkbook.Worksheets(1)
これは、シートをCopyして付け足すという意味です。

>ここから、左から1番目と2番目だけをコピーして
ということはシートのことですね。

シートひとつずつを、単独のブックにするということならこうなるはずですが。

本当は、ActiveSheet の部分を決めたほうが良いと思います。
質問と文章から最大限に汲み取れる内容というと、以下のようなものになります。

'//
Sub mySheetSave()
 Dim xSheet As Worksheet
 Dim myFile As Variant
 Dim fName As Variant
 Dim i As Long
 Dim newBook As Workbook
 Set xSheet = ActiveSheet
 fName = xSheet.Range("B1").Value
 
 For i = 1 To 3
 ThisWorkbook.Worksheets(i).Copy
 Set newBook = ActiveWorkbook
 myFile = Application.GetSaveAsFilename(fName, _
  FileFilter:="Excel File (*.xlsx),*.xlsx,Excel File Macro(*.xlsm),*.xlsm")
 If VarType(myFile) = vbBoolean Then Exit Sub
 newBook.SaveAs myFile, xlWorkbookNormal
 newBook.Close False
 Next i
End Sub
    • good
    • 0
この回答へのお礼

ご連絡が遅くなってしまい申し訳ございませんでした。

>シートひとつずつを、単独のブックにするということならこうなるはずですが。

やろうとしていた処理は、1つのブックの2シートを1つのブックにコピーするといったものでした。
こちらの説明が曖昧ですみません。回答頂いたもう一人の方の回答で解決できました。

また、シート一つずつを単独ブックにするやり方については大変参考になりました。
このような処理が必要になったときに活用させていただきます。とても勉強になりました。

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

お礼日時:2017/05/06 14:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aと関連する良く見られている質問

QExcel VBAで複数シートをコピーする

Excel VBAで複数のシートを新たらしいブックにコピーする方法が分かりません。

一応、Selectで全てのシートを選択し
コピーする方法は分かるのですが
出来ればSelectなどの画面遷移をプログラム内に含ませたくありません

シートは n件存在します。
ご存知の方がおられましたら
ぜひ、教えて頂けないでしょうか?

Aベストアンサー

すいません、勉強不足でした。
ただ単純に「全てのシートを選択」し「新規ファイルにコピー」という動作であれば、
sheets.Select
sheets.Copy
だけでできました。

Q複数のシートを別ブックにコピーして保存したい

毎回、シート数が変動するEXCELファイルの、表示されているシートのみ(非表示シート有)を、
別のブックにコピーして、セルの書式と値を貼付けし、
元ファイルのシート名と同じシート名を付けたいのですが、
どんなVBAを組めば良いでしょうか?
下記の様に作成してみましたが、ファイル自体がコピペされてしまう様で、
自分のイメージした通りに動きません・・・。
ご教授の程、宜しくお願いいたします。

Sub データ書き出し()
Dim ws As Worksheet
Dim i As Long
With ActiveWorkbook
i = Worksheets.Count
For j = 1 To i

ThisWorkbook.Worksheets(j).Cells.Copy
.Worksheets(j).Range("A1").PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Next j
Application.CutCopyMode = False
.SaveAs "月別DATA_"
End With
End Sub

毎回、シート数が変動するEXCELファイルの、表示されているシートのみ(非表示シート有)を、
別のブックにコピーして、セルの書式と値を貼付けし、
元ファイルのシート名と同じシート名を付けたいのですが、
どんなVBAを組めば良いでしょうか?
下記の様に作成してみましたが、ファイル自体がコピペされてしまう様で、
自分のイメージした通りに動きません・・・。
ご教授の程、宜しくお願いいたします。

Sub データ書き出し()
Dim ws As Worksheet
Dim i As Long
With ActiveWorkbook
i = Workshe...続きを読む

Aベストアンサー

質問の文言と提示のコードには矛盾点、疑問点がありますが、
要するに以下のようなことですか?

元ブック : ThisWorkbook
コピー先 : まとめ.xls

だと仮定して、、

●元ブックの表示シートを"まとめ.xls"にコピーする

●コピーするときは、"まとめ.xls”に既にコピーしてあるシートの次からコピーする
(要するに、まとめ.xlsのシートはコピーするたびに増えていくということです)

●コピーは書式と値のみにする

●コピーしたシート名は、元ブックのシート名と同じにする
(ま、これはシートをコピーすればいいわけですが)
 

もし、このようなことなら以下のコードでもできます。
 
'--------------------------------------------
Sub test()
 Dim MatomeBK As Workbook
 Dim MotoBK As Workbook
 Dim Sht As Worksheet

 Set MotoBK = ThisWorkbook
 Set MatomeBK = Workbooks("まとめ.xls")

 For Each Sht In MotoBK.Worksheets
   If Sht.Visible = True Then
     Sht.Copy After:=MatomeBK.Worksheets(MatomeBK.Worksheets.Count)
     ActiveSheet.Cells.Copy
     ActiveSheet.Cells(1).PasteSpecial Paste:=xlValues
     Application.CutCopyMode = False
   End If
 Next Sht

'● MatomeBK.Close True 'まとめ.xls の上書き保存&CLOSE

End Sub
'----------------------------------------------------

それから、コピー先にコピー元と同じシート名があったらどうするかなど
処理の流れを実際に即しても少し詳しく説明する必要があるでしょう。
以上です。
 
 

質問の文言と提示のコードには矛盾点、疑問点がありますが、
要するに以下のようなことですか?

元ブック : ThisWorkbook
コピー先 : まとめ.xls

だと仮定して、、

●元ブックの表示シートを"まとめ.xls"にコピーする

●コピーするときは、"まとめ.xls”に既にコピーしてあるシートの次からコピーする
(要するに、まとめ.xlsのシートはコピーするたびに増えていくということです)

●コピーは書式と値のみにする

●コピーしたシート名は、元ブックのシート名と同じにする
(ま、これはシ...続きを読む

Qvba 特定の複数シートを別ファイルで保存。

ブック内にA,Bと2つのシートがあり、ボタンをクリックすると特定の回数、シートAの情報が新規作成されたシートCにコピーされ、シートCとシートBの2シートが別ファイルとして保存される。という動きを繰り返したいのですが、
新規生成されるシートCだけを別ファイルで保存することまでは出来たのですが、シートBが追加できず困っています。

Sub 分割()

Dim cpy As Range
Dim pst As Range

Dim path 'ファイルパス
path = ActiveWorkbook.path
Dim CopyWorkBook
Dim CopyWorkSheet1
Dim CopyWorkSheet2
Dim Position(2,2) 'ここにはシートCを作成する際の情報が入っている。

'新規シートCを作成してシートAからデータをコピー。
For i = 1 To 2 Step 1 'とりあえず2シート作成する。
Worksheets.Add(after:=Worksheets(Worksheets.Count)).Name = Position(i, 2)

'まずは、タイトル欄をコピー
Worksheets("Sheet1").Activate
Set cpy = Worksheets("Sheet1").Range("A2:Q2")
Worksheets(Position(i, 2)).Activate
Set pst = Worksheets(Position(i, 2)).Range("A2:Q2")
pst.Value = cpy.Value '貼り付け
End With

'シートを別名で保存
Set CopyWorkSheet1 = Worksheets(Position(i, 2))
Set CopyWorkSheet2 = Worksheets("シートB")

CopyWorkSheet1.Copy
' CopyWorkSheet2.Copy ←これでシートBもコピーされるかと思いましたが、シートBが上書きされてしまう。
Set CopyWorkBook = ActiveWorkbook

ActiveWorkbook.SaveAs path & "\" & Position(i, 2) & "xls", xlWorkbookNormal
CopyWorkBook.Close
Next

End Sub

質問は2つあります。
(1)シートBも新規作成されたシートCと一緒に別ブックに保存したいのですが、どうすればいいでしょうか?
(2)シートのコピーの動きがイマイチよくわかりません。
今の私の環境だと(ネットで調べた書き方ですが)、シートを別ブックにコピーする際、

Set CopyWorkSheet1 = Worksheets("シートA")
CopyWorkSheet1.Copy
Set CopyWorkBook = ActiveWorkbook

となっていますが、Setで、コピー元のシートAの情報をCopyWorkSheet1にコピーしたあと、
CopyWorkSheeet1.Copy となっていますが、この意味がわかりません。
なぜ更にコピーしているのでしょうか?またこれで、別ブックにシートが追加されてる理由もわかりません。
また、この処理の後に、 Set CopyWorkBook = ActiveWorkbook と、ブックの情報をコピーしていますが、普通に考えると最初にブックの情報をコピーして別名のブックを生成しておく必要があるように思えるのですが、後でよい理由も分かりませんし、これだと、Activeのワークブックのシート情報も全部コピーされてしまう気がするのですが。。。
この辺が全然分かっていないので、解説頂けるか参考サイトを教えて頂けないでしょうか。

よろしくお願い致します。

ブック内にA,Bと2つのシートがあり、ボタンをクリックすると特定の回数、シートAの情報が新規作成されたシートCにコピーされ、シートCとシートBの2シートが別ファイルとして保存される。という動きを繰り返したいのですが、
新規生成されるシートCだけを別ファイルで保存することまでは出来たのですが、シートBが追加できず困っています。

Sub 分割()

Dim cpy As Range
Dim pst As Range

Dim path 'ファイルパス
path = ActiveWorkbook.path
Dim CopyWorkBook
Dim CopyWorkSheet1
Dim CopyW...続きを読む

Aベストアンサー

何をされたいのかちょっとよく分からないので(^^;、
余計混乱してしまうかもしれませんが、以下の視点を持つと、理解が進むと思います。
・Setでいちいちオブジェクトに代入しなくてもコピペ(というか値を書き写す)できます。
・通常のマウス操作であるコピーしてペーストするというのを忘れて下さい。

■セルのコピー
左辺の値を右辺にすると書きます。
Range("○○").value = Range("●●").value
(今アクティブなシートの)セル○○の値をセル●●の値にします。

シートを指定する場合はRangeの前にSheets("●●").のように。
ブックを指定する場合はSheetsの前にWorkbooks("●●").のように書きます。

■シートのコピー
これはそういう命令です。
Sheets("○○").copy のあとにBeforeかAfterと書いて、
どのシートの前(後ろ)にコピーするか指定します。

■参考
Sub sheet_copy1()
Sheets("○○").copy After:=Sheets("○○")
End Sub

↑シート名○○を、シート名○○の後ろにコピーし名前は自動付加します。


Sub sheet_copy2()
  Sheets("Sheet1").Range("A1").Value = Sheets("Sheet2").Range("A1").Value
End Sub

↑シート名Sheet2のA1セルの値を、シート名Sheet1のA1セルにコピペします。


Sub sheet_copy3()
With Workbooks.Open("1.xlsm")
Workbooks("2.xlsm").Sheets("sheet1").Copy after:=.Sheets("sheet1")
End With
End Sub

↑ブック名2.xlsmシート名Sheet1を、ブック名1.xlsmシート名Sheet1の後ろにコピーします。
 WithがSetの役割をしています。


・Activateする、Setして代入する、と書かれている行はほぼ全て不要です。
・Activeなシートをどうこうする
というのもワケがわからなくなるので、
直接ブック名やシート名を指定するとうまく動かせる気がします。

何をされたいのかちょっとよく分からないので(^^;、
余計混乱してしまうかもしれませんが、以下の視点を持つと、理解が進むと思います。
・Setでいちいちオブジェクトに代入しなくてもコピペ(というか値を書き写す)できます。
・通常のマウス操作であるコピーしてペーストするというのを忘れて下さい。

■セルのコピー
左辺の値を右辺にすると書きます。
Range("○○").value = Range("●●").value
(今アクティブなシートの)セル○○の値をセル●●の値にします。

シートを指定する場合はRangeの前にSheets("●●").のよう...続きを読む

QExcel VBA 特定の複数のシートのみ保存する方法

VBAで1つのシートを保存する方法やブックを保存するはわかるのですが
「不要なシートを除いて、他全てのシートをひとつのブックとして保存」する方法がわかりません。
わかる方教えてください。

▼作業の流れ▼
【1】操作するシートである計算を行います。
※現在のシートは1つとします。
「操作」シート

【2】計算結果はシートが追加され各シートに移動されます。
 (1)シート、(2)シート・・・と(最大は20まで)

【3】各シートに割り振られたら(「操作」シートを除いて)名前をつけて保存します。

※現在のシートは4つあるとします。
「操作」シート 「(1)」シート 「(2)」シート 「(3)」シート

(1)、(2)、(3)の3つシートだけを「名前を付けて保存」をしたいと考えています。

Aベストアンサー

「操作」シート の位置が特定できなかったので面倒な書き方になりましたが、「操作」という名前のシート以外を別名保存させる一例です。

Sub test01()
Worksheets(Worksheets.Count).Select
If ActiveSheet.Name = "操作" Then
Worksheets(Worksheets.Count - 1).Select
End If
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> "操作" Then
ws.Select (False)
End If
Next
ActiveWindow.SelectedSheets.Copy
Application.Dialogs(xlDialogSaveAs).Show
End Sub

QExcelのファイルからシート毎にファイルを作成する方法

複数のシートで構成されているひとつのExcelファイルからシートごとに分割してファイルを作成(保存したいです)

具体的には、

ファイル名 file.xls
 含まれているシート Sheet1 Sheet2 Sheet3

このfile.xlsから自動でSheet1.xls Sheet2.xls Sheet3.xlsという
ファイルを作成してそれぞれのシートだけを保存する方法があれば教えてください。

標準の機能でなければ、フリーソフトなど別のソフトを使った方法でもかまいません。

Aベストアンサー

>シートの数が多いので、自動化マクロを作る方法を考えます。
手作業でするのが面倒と思えば、VBAでやらせるほかありません。
ーーー
VBAの経験はありますか。マクロの記録の回答に対し、反応が鈍いところ、質問も丸投げ的なことからも、経験が少ないのでは。多くの経験が必要です。
参考までに、私としては苦心したコードを挙げておきますが、判ってもらえるのかどうか。
Sub test02()
Dim wb1 As Workbook
Set wb1 = ActiveWorkbook
s = wb1.Sheets.Count
MsgBox s & "枚"
For i = 1 To s
Workbooks.Add.SaveAs Filename:="AD" & i & ".xls"
wb1.Worksheets(i).Copy before:=Workbooks("AD" & i & ".xls").Worksheets(1)
Workbooks("AD" & i & ".xls").Worksheets(1).Name = "ADS" & i
Next i
End Sub
ーー
質問のファイル名 file.xlsに当たるブックの標準モジュールに上記を貼り付けます。
上記では新しく出来たブックの名前は"AD" & i & ".xls"で規定されます。適当に変えてください。
新しく出来たブックのシート名は上記では、Name = "ADS" & i
で規定されます。シートが皆同じでよければ定数だけにしてください。
以上は、シートのコピーというエクセルの良く使う機能を使ったもの(操作をVBA化したもの)です。他にもやり方があると思いますが、一番コードが短いかなと思う。

>シートの数が多いので、自動化マクロを作る方法を考えます。
手作業でするのが面倒と思えば、VBAでやらせるほかありません。
ーーー
VBAの経験はありますか。マクロの記録の回答に対し、反応が鈍いところ、質問も丸投げ的なことからも、経験が少ないのでは。多くの経験が必要です。
参考までに、私としては苦心したコードを挙げておきますが、判ってもらえるのかどうか。
Sub test02()
Dim wb1 As Workbook
Set wb1 = ActiveWorkbook
s = wb1.Sheets.Count
MsgBox s & "枚"
For i = 1 To s
Work...続きを読む

QEXCEL VBA で現在開いているブックのファイル名を取得する方法

EXCEL2003 VBAで業務を簡素化するために、現在開いているブックのファイル名を取得する方法が分かりません。
作業手順をマクロを使って処理していますが、オリジナルのワークブックをファイル名を変えて保存し、以後、このワークブックを読み込んで使用しています。
このときのVBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり、以後の業務に使用できません。
常にファイル名を取得出来るVBAをどなたか、教えて下さい。

Aベストアンサー

>現在開いているブックのファイル名
 ちょっと曖昧な表現かなぁという気もいたしますが、VBAが書いてあるブックのブック名は
ThisWorkbook.Name
で、現在 "アクティブにして" 操作対象になっているブックの名前は
ActiveWorkbook.Name
ですね。

 しかし、
>VBAは、オリジナルのファイル名を使っているため、ファイル名を変更するとエラーになり
というような文脈からすると、
ThisWorkbook.Name
の方ですかね。

Q複数の同じフォーマットのファイルを新しいブックで一つのシートにまとめる方法

仕事で、各部署から送られてきた、同じフォーマットのファイル(シート1にのみデータ有)が50個近くあります。
それを新しいブックで一つのシートにまとめなくてはいけません。
地道にコピペするのは時間がかかるのでマクロで処理を行いたいと思います。
マクロでの処理方法ご存知の方、処理方法の載っているサイトをご存知の方、もしくはマクロより簡単な方法がありましたら教えてください。

あと、逆に一つのシートをいくつかのファイルに振り分けていく方法もご存知でしたら教えて下さい。
よろしくお願いします。

Aベストアンサー

すみません。質問を勘違いしていました。
>新しいブックで一つのシートにまとめなくてはいけません
でしたね。
Sub Sample1()
Dim buf As String, i As Long
Dim j
buf = Dir(Sheets("Sheet1").Range("A1").Value & "\*.xls")
Do While buf <> ""
Workbooks.Open Worksheets("Sheet1").Range("A1").Value & "\" & buf
Sheets("Sheet1").Range("A1:J1000").Copy
ThisWorkbook.Activate
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Workbooks(buf).Activate
Application.CutCopyMode = False
Workbooks(buf).Close SaveChanges:=False
buf = Dir()
Loop
End Sub
で試してみてください。使い方などは
http://oshiete1.goo.ne.jp/qa4225063.html
を参照してみてください。同じ質問があったので気がつきました。

すみません。質問を勘違いしていました。
>新しいブックで一つのシートにまとめなくてはいけません
でしたね。
Sub Sample1()
Dim buf As String, i As Long
Dim j
buf = Dir(Sheets("Sheet1").Range("A1").Value & "\*.xls")
Do While buf <> ""
Workbooks.Open Worksheets("Sheet1").Range("A1").Value & "\" & buf
Sheets("Sheet1").Range("A1:J1000").Copy
ThisWorkbook.Activate
Range("A65536").End(xlUp).Offset(1, 0).Select
ActiveSheet.Paste
Workbooks(buf).Activate
Application.CutCop...続きを読む

QVBAで別エクセルファイルから指定エクセルファイルにシートをコピー

Office2003のエクセルでVBAを勉強しております。

そこで、VBAで別エクセルファイルからあるシートを指定エクセルファイルへ丸まるコピーしたい場合にはどのようにすればよいのでしょうか?

Aベストアンサー

Sheets("A").Copy Before:=Workbooks("Book1").Sheets(1)


>Office2003のエクセルでVBAを勉強しております。

方法が解らなければ、記録マクロを確認するのが一番です。
動作が理解出来たら、コードの最適化を行ってください。

Qエクセルマクロで 新規ブックにシートをコピーして保存

エクセルのマクロを使い 名前の決まっている特定のシートを
新規ブックにして名前をつけて保存をしたいのです.
色々参考にして以下のようなマクロを書いたのですが
これだと元々のファイル名が変わって保存されてしまいました。
どなたかお知恵をお貸しください。
今作ったマクロ
Sub p()
Worksheets("印刷用日誌").Copy
MsgBox Year(Now) & "-" & Format(Now(), "yy-mm") & "-" & Range("k7")
On Error Resume Next
Application.DisplayAlerts = False
ThisWorkbook.SaveAs Year(Now) & "-" & Format(Month(Now), "00") & "-" & Format(Day(Now), "00")
Application.DisplayAlerts = True
On Error GoTo 0
End Sub

よろしくお願いします

Aベストアンサー

>ThisWorkbook.SaveAs Year(Now) & "-" & Format(Month(Now), "00") & "-" & Format(Day(Now), "00")
ThisWorkbook はコードが書かれているブックの事。

新規Bookに対してなら、
ActiveWorkbook.SaveAs Year(Now) & "-" & Format(Month(Now), "00") & "-" & Format(Day(Now), "00")
ではないかな?

QVBAにて新規ブックへ既存シートのコピー

みなさんのお力を貸して下さい。

現在エクセルマクロにて新規ブックを作成し、作成したブックへ既存のシートをコピーをしたいと思っています。
しかし、コピーメソッド実行時にエラー1004 WorksheetクラスのCopyメソッドが失敗しましたというエラーが発生して困っています。

Dim oXls As Object
Dim oWbk As Object
Dim oSheet As Object

Set oXls = CreateObject("Excel.Application")
Set oWbk = oXls.Workbooks.Add

ThisWorkbook.Worksheets("Sheet1").Copy Before:=oWbk.Worksheets("Sheet1") 

どなたかご教授、よろしくお願いします。

Aベストアンサー

エラーの原因は、redfox63さんが回答されてますのでなんですが。。。

>Set oXls = CreateObject("Excel.Application")

これが拙いですよ、ということです。

'------------------------------------------
Sub test1()
  Dim oWbk As Workbook
  Set oWbk = Workbooks.Add
  ThisWorkbook.Worksheets("Sheet1").Copy Before:=Worksheets("Sheet1")
End Sub

'-----------------------------------------
Sub test2()
  Workbooks.Add
  ThisWorkbook.Worksheets("Sheet1").Copy Before:=Worksheets("Sheet1")
End Sub

'------------------------------------
Sub test3()
  ThisWorkbook.Worksheets("Sheet1").Copy
End Sub
'-------------------------------------

test1,2,3とも新しいブックは、ActiveWorkbook になります。
(test1では、oWbkも新しいブックですが)
また、test3 では、コピーされたシート1枚(Sheet1)のみの新しいブックが作成されます。
 

エラーの原因は、redfox63さんが回答されてますのでなんですが。。。

>Set oXls = CreateObject("Excel.Application")

これが拙いですよ、ということです。

'------------------------------------------
Sub test1()
  Dim oWbk As Workbook
  Set oWbk = Workbooks.Add
  ThisWorkbook.Worksheets("Sheet1").Copy Before:=Worksheets("Sheet1")
End Sub

'-----------------------------------------
Sub test2()
  Workbooks.Add
  ThisWorkbook.Worksheets("Sheet1").Copy Befo...続きを読む


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング