Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7258 / 13645 ツリー ←次へ | 前へ→

【40266】シートの値のみ貼付け(複数) サン 06/7/10(月) 12:22 質問[未読]
【40268】Re:シートの値のみ貼付け(複数) Statis 06/7/10(月) 13:19 発言[未読]
【40269】Re:シートの値のみ貼付け(複数) Statis 06/7/10(月) 13:21 発言[未読]
【40273】Re:シートの値のみ貼付け(複数) サン 06/7/10(月) 14:23 発言[未読]
【40279】Re:シートの値のみ貼付け(複数) Statis 06/7/10(月) 15:27 回答[未読]
【40293】Re:シートの値のみ貼付け(複数) サン 06/7/10(月) 17:32 お礼[未読]

【40266】シートの値のみ貼付け(複数)
質問  サン E-MAIL  - 06/7/10(月) 12:22 -

引用なし
パスワード
   いつも申し訳ござません。

A1   B1   C1
コード 顧客名 顧客名カナ 
 A2   B2   C2
11111111 ××  ××
 .
 .

となっている表を複数にシートの値のコピーを下記のマクロを参考にして
マクロを作りたいのですが、A1をA:Cに変えてもうまく動きません。
どのようにしたら宜しいでしょうか。
御忙しい所申し訳ございませんが、教えていただけますでしょうか。


Sub コード表コピー

Dim myData As String
Dim myWinName1, myWinName2 As String

'作業時画面固定
Application.ScreenUpdating = False

'振分先ブック名をフルパスでセット
myWinName1 = "C:\book1.xls"
myWinName2 = "C:\book2.xls"

'■1つめのブックへデータセット
'振分元データ取得
myData = Sheets("F 締日支払日ex").Range("A1").Value
'振分先ブックオープン(Book1.xls)
Workbooks.Open Filename:=myWinName1
'振分先ブックへデータセット
Sheets("sheet1").Range("A1") = myData
'振分先ブックを保存・終了(Book1.xls)
ActiveWorkbook.Close savechanges:=True


'■2つめのブックへデータセット
'振分元データ取得
myData = Sheets("F 締日支払日ex").Range("A1").Value
'振分先ブックオープン(Book2.xls)
Workbooks.Open Filename:=myWinName2
'振分先ブックへデータセット
Sheets("sheet2").Range("A1") = myData
'振分先ブックを保存・終了(Book2.xls)
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub

【40268】Re:シートの値のみ貼付け(複数)
発言  Statis  - 06/7/10(月) 13:19 -

引用なし
パスワード
   こんにちは

どのように変更して上手く行かないのか詳しく記載願います。

コードを見るとシート(F 締日支払日ex)のセルA1の値を
Book1、Book2のシート1のセルA1に値をセットしているようですが
実際は何をしたいのでしょうか?

【40269】Re:シートの値のみ貼付け(複数)
発言  Statis  - 06/7/10(月) 13:21 -

引用なし
パスワード
   ▼Statis さん:
>こんにちは
>
>どのように変更して上手く行かないのか詳しく記載願います。
>
>コードを見るとシート(F 締日支払日ex)のセルA1の値を
>Book1、Book2のシート1のセルA1に値をセットしているようですが
>実際は何をしたいのでしょうか?

失礼、Book2はシート2でした

【40273】Re:シートの値のみ貼付け(複数)
発言  サン E-MAIL  - 06/7/10(月) 14:23 -

引用なし
パスワード
   ▼Statis さん:
説明不足ですいません・・・
顧客表のAからC(コード・顧客名・かな)を
全部他のシートにコピーしたかったのですが
A1のコピーのやり方しかわからなかったので、
全部コピーするには、どうすればよいのか
悩んでいました。

myData = Sheets("sheet1").Range("A1").Value

myData = Sheets("sheet1").Range("A:C").Value
に変えたらA列からC列をコピーするのかと
思っていましたら、出来なかったので
教えていただきたいと思いました。

御忙しい所、申し訳ございません。


>▼Statis さん:
>>こんにちは
>>
>>どのように変更して上手く行かないのか詳しく記載願います。
>>
>>コードを見るとシート(F 締日支払日ex)のセルA1の値を
>>Book1、Book2のシート1のセルA1に値をセットしているようですが
>>実際は何をしたいのでしょうか?
>
>失礼、Book2はシート2でした

【40279】Re:シートの値のみ貼付け(複数)
回答  Statis  - 06/7/10(月) 15:27 -

引用なし
パスワード
   こんにちは
シートすべての値をコピーなら
これで如何かな?

Sub コード表コピー()

Dim Va As Variant, Wb As Workbook
Dim Ws As Variant, i As Long

'作業時画面固定
Application.ScreenUpdating = False
i = 0
'振分元データ取得
Ws = Array("Sheet1", "Sheet2")

For Each Va In Array("C:\book1.xls", "C:\book2.xls")
  Set Wb = Workbooks.Open(Va)
  ThisWorkbook.Sheets("F 締日支払日ex").UsedRange.Copy
  Wb.Sheets(Ws(i)).Range("A1").PasteSpecial xlPasteValues
  Application.CutCopyMode = False
  Wb.Close savechanges:=True
  i = i + 1
Next Va

Application.ScreenUpdating = True
MsgBox "完了"
End Sub

【40293】Re:シートの値のみ貼付け(複数)
お礼  サン E-MAIL  - 06/7/10(月) 17:32 -

引用なし
パスワード
   ▼Statis さん:

御返信遅くなりまして申し訳ございませんでした。
有難うございます。
コピーが出来ました。
とてもとても感謝しております。
本当に有難うございました。

>こんにちは
>シートすべての値をコピーなら
>これで如何かな?
>
>Sub コード表コピー()
>
>Dim Va As Variant, Wb As Workbook
>Dim Ws As Variant, i As Long
>
>'作業時画面固定
>Application.ScreenUpdating = False
>i = 0
>'振分元データ取得
>Ws = Array("Sheet1", "Sheet2")
>
>For Each Va In Array("C:\book1.xls", "C:\book2.xls")
>  Set Wb = Workbooks.Open(Va)
>  ThisWorkbook.Sheets("F 締日支払日ex").UsedRange.Copy
>  Wb.Sheets(Ws(i)).Range("A1").PasteSpecial xlPasteValues
>  Application.CutCopyMode = False
>  Wb.Close savechanges:=True
>  i = i + 1
>Next Va
>
>Application.ScreenUpdating = True
>MsgBox "完了"
>End Sub

7258 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free