アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルでマクロをし始めたばかりのため、皆様にお教え頂きたいです。
1度質問させて頂きましたが上手くいかず再度質問させて頂きました。

今開いいるシートに転送ボタンを作成します。このシートのセルC4からC27まで、もしくはC23までのデータ(言葉や数値など)を、ボタンを押して、Cドライブ共有フォルダ内のマクロというブック、様式1ならびに2の名前のシートにセルB9,C9,D9…といったように縦並びから横並びに変えて毎日までに転送しようと思います。(行と列を入れ替えて2シート一括転送コピー。)
その際、転送先はシート保護をしておきたいのです。

Option Explicit
Private Sub CommandButton1_Click()
Call Macro1
End Sub

Sub Macro1()
Dim GYOU As Long

Workbook.Open Filename:=”C:¥共有¥マクロ.xlsx”

ActiveSheet.Unprotect

ThisWorkbook.Activate
With Workbooks(”マクロ.xlsx”)
Sheets(”様式1”).Activate
Sheets(”様式1”).Unprotect

GYOU = .Sheets(”様式1”).Range(”A” & Rows.Count).End(xlUp).Row + 1
.Sheets(”様式1”).Range(”A” & GYOU & ”:AA” & GYOU + 1880).Value
=Sheets(”様式1”).Range(”A2:AA2000”).Value

Sheets(”様式2”).Activate
Sheets(”様式2”).Unprotect

GYOU = .Sheets(”様式2”).Range(”A” & Rows.Count).End(xlUp).Row + 1
.Sheets(”様式2”).Range(”A” & GYOU & ”:W” & GYOU + 1880).Value
=Sheets(”様式2”).Range(”A2:W2000”).Value

Application.CutCopyMode = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
ActiveWorkbook.Close SaveChanges:=True

End with
Range(”A2:AA6000”).Value=””

End Sub


この様なマクロを組んでみましたがエラーメッセージが出て、止まってしまいます。
【エラー内容】
変更しようとしているセルやグラフは保護されているシート上にあります。…
というコメントが出て、
.Sheets(”様式2”).Range(”A” & GYOU & ”:W” & GYOU + 1880).Value
=Sheets(”様式2”).Range(”A2:W2000”).Value
に黄色いラインが入ります。


どの様に修正すれば良いのでしょうか?
お手数をおかけして申し訳ございませんが、よろしくお願いします。

質問者からの補足コメント

  • ありがとうございます。どうしても上手くいかないため改めて質問させて頂きました。よろしくお願い致します。

      補足日時:2016/05/26 10:40

A 回答 (1件)

よ~く、考えてコードを見てみましょう。


ThisWorkbook.Activate
With Workbooks(”マクロ.xlsx”)
Sheets(”様式1”).Activate
Sheets(”様式1”).Unprotect
保護を解除したのは、ThisWorkBookの  Sheets(”様式1”).Unprotect
本当は、Workbooks(”マクロ.xlsx”)
ではないでしょうか。
ならば
ThisWorkbook.Activate
With Workbooks(”マクロ.xlsx”)
.Sheets(”様式1”).Unprotect
    • good
    • 1
この回答へのお礼

ありがとうございます。どうしても上手くいかないため改めて質問させて頂きました。よろしくお願い致します。

お礼日時:2016/05/26 10:41

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