Quantcast
Channel: OKWAVE 最新質問(Visual Basic/257)【本日】
Viewing all articles
Browse latest Browse all 6510

マクロの修正をお願いします。

$
0
0
エクセルのマクロに関する質問です。 今開いてるブックの『Aシート』に転送ボタンを作成します。これとは別に『Bシート』を作り、『Aシート』の2列目からAA列目までと、『Bシート』の2列目からW列目までのデータ(言葉や数値など)を、ボタンを押して、Cドライブ共有フォルダ内の『マクロ』というブック、『1シート』ならびに『2シート』の名前のシートにセルB9~,C9~,D9~…といったように毎日転送(コピー)しようと思います。 イメージとしては以下の通りです。 【5/3】 『Aシート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 ↓[転送ボタン] 『1シート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 【翌日5/4】 『Aシート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 5/4   佐藤 8:30  068912 ↓[転送ボタン] 『1シート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 5/4   佐藤 8:30  068912 5/5以降も下の行に毎日『Aシート』『Bシート』に入力したデータを『1シート』『2シート』に転送(コピー)し保存します。 その際、転送先はシート保護をしておきたいのです。 Sub Macro1() Dim GYOU As Long Dim 様式1 As Worksheet, 様式2 As Worksheet Dim 様式A As Worksheet, 様式B As Worksheet With ThisWorkbook Set 様式A = .Worksheets("様式A") Set 様式B = .Worksheets("様式B") End With With Workbook.Open(Filename:="C:\共有\マクロ.xlsx") Set 様式1 = .Worksheets("様式1") Set 様式2 = .Worksheets("様式2") 様式1.Unprotect 様式2.Unprotect 様式A.Unprotect 様式B.Unprotect 様式A.Range("B16:AA2000").Copy 様式1.Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues 様式B.Range("B16:W2000").Copy 様式2.Range("B" & Rows.Count).End(xlUp).Offset(1).PasteSpecial xlPasteValues Application.CutCopyMode = False 様式1.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True 様式2.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True 様式A.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True 様式B.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True .Close SaveChanges:=True End With MsgBox "『マクロブック』へ" & vbCrLf & "データ転送しました。" End Sub この様なマクロを組んでみましたが、転送ボタンを押した際転送先の『様式1』『様式2』シート共に保護がかかったままデータがされるものの最初のデータ(5/1)から当日分(5/4)全てが張り付けられてしまいます。 【翌日5/4】 翌日5/4】 『Aシート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 5/4   佐藤 8:30  068912 ↓[転送ボタン] 『1シート』 日付  名前   時刻  データ   … 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 5/1   田中  7:30  534986 5/2   太田  13:00  691324 5/3 鈴木  14:00 143985 5/4   佐藤 8:30  068912 ポイントとしましては以下の通りです。 (1)『様式A,B』のシートは『様式1,2』へそれぞれ転送。 (2)毎日データ転送し、『様式1,2』へは下の行へその都度入る。 (3)『様式A,B』及び『様式1,2』は入力箇所以外は保護が掛けられ、データ転送後も保護が掛けられた状態のまま保存。 (4)日付データは重複しない。 どの様に修正すれば良いのでしょうか? よろしくお願いします。

Viewing all articles
Browse latest Browse all 6510

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>