• ベストアンサー

EXCEL書式設定の保護

よろしくお願いいたします. 外部ソフトからデータをEXCEL2007に流し込んでいるのですが, 何故か事前に設定したセルの横位置の設定だけが解除されており,悩んでおります. そこで,セルの内容については保護をかけず, セルの書式設定の縦位置及び横位置の設定のみ保護したいと考えております. このような場合,どのようにEXCEL操作またはEXCELマクロを作成したら良いのでしょうか? 何か良い方法がありましたら教えていただけますでしょうか. よろしくお願いいたします.

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

>何故か,セルの書式の縦位置の情報が空欄になってしまいます. 具体的にどのようなコードになっているのでしょうか? 例えば、縦位置を設定する以下のようなコードが入っているのであれば、このコード行(横位置ならHorizontalAlignmentの行)を削除すれば、貼り付け先の書式で貼り付けることができます。 .VerticalAlignment = xlBottom もしコピー貼り付けしているコードであれば、単純に値貼り付けする以下のようなコードに変更してみてください。 Range("貼り付け先のセル番地").PasteSpecial Paste:=xlPasteValues

nekota55
質問者

お礼

なるほど! うまくマクロに組み込み解決できました. 大変助かりました,ご回答ありがとうございました.

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

ごく普通に値を代入処理すれば、セルの書式は保たれていると思うのですが、コピー操作をしているのでしょうか? その場合は、貼り付けるときに「形式を選択して貼り付け」で「値」で貼りつけるコードに変更してください。

nekota55
質問者

お礼

何故か,セルの書式の縦位置の情報が空欄になってしまいます. やはり,流し込みをかけるアプリケーションとの相性なのかもしれません. ご回答ありがとうございました.

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

シート保護の対象を色々設定してみて下さい。

nekota55
質問者

お礼

私が何か見落としているのかもしれませんが, シート保護では書式設定のみの保護をかけられないと思われます. マクロを組もうにも,セル書式保護変数がわからず・・・. ご回答ありがとうございました.

関連するQ&A