[[20050203170853]] 『マクロの消去』(マクロ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『マクロの消去』(マクロ)

いつも楽しく拝見しています。

マクロを組んでみたんですが、マクロでマクロを消すことって出来るのでしょうか?

やりたいことは以下のとおりです。

原本にマクロのコード → マクロ実行にて別名にて保存 → 別名にて保存したファイルを開くと、マクロが消去されている(原本はそのまま)

別名にて保存までは分かるんですが、マクロがない状態にしたくて。。。容量を減らすためにも、どなたか御教授願います。


 マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので
 このような場所では教えてもらえないと思います。

 (川野鮎太郎) 確か以前σ(^_^;)も同じ質問したような・・・(T▽T)アハハ!

 新規ブックにシートのデータをコピーして下さい。

 > マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので
 2003だと使えないですしね。
  (INA)

(川野鮎太郎)さま、(INA)さま、早速の御回答、ありがとうございます。

新規ブックにシートのコピーだったら、マクロは残ってしまいましたが。。。シートのデータ?のみですか?どのようにすればいいのでしょうか?勉強不足で申し訳ありません。

別の案として、マクロで、テキストで保存して、次に開くときにエクセルを開くことって出来るのでしょうか?

なんか、無知な質問で申し訳ありませんが、御教授願います。 (マクロ)


 テキストで持ってくるのは判りませんが、以下のようにして全部のセルをコピペではどうでしょうか。
 
Sub Test()
    MyBook = ThisWorkbook.Name '元ブック名の取得
    Set MyRange = Workbooks("Book2").Worksheets("Sheet1").Range("A1")
    Workbooks(MyBook).Worksheets("Sheet1").Cells.Copy Destination:=MyRange
End Sub

 元のブックのシート1をBook2と言うブックのSheet1にコピペするものです。
 あとはマクロの記録などを利用して、新規ブックの作成などからBook2のところを
 修正すれば出来ませんでしょうか。

 (川野鮎太郎)

 >シートのデータ?のみですか?
 そうです。

 直書きなので間違えるかも。

 dim i as long
 dim wb as workbook

 on error resume next

 with thisworkbook

  set wb = workbooks.add

   for i = 1 to .worksheets.count
      if .worksheets.count > wb.worksheets.count then
         wb.worksheets.add after:=wb.Worksheets(wb.Worksheets.Count)
      end if
   next i  

   for i = 1 to .worksheets.count
      .Worksheets(i).Range("A1", .Worksheets(i).Range("a1").SpecialCells(xlLastCell)).Copy _
      wb.Worksheets(i).Range("a1")

      wb.worksheets(i).name=.worksheets(i).name
   next i  

 end with

  (INA)

(川野鮎太郎)さま、ご返答、ありがとうございます。

 Sub Test()
 Dim Mine As Workbook
    Set Mine = Workbooks.Add

    MyBook = ThisWorkbook.Name  '元ブック名の取得
    Set MyRange = Workbooks("Book2").Worksheets("Sheet1").Range("A1")
    Workbooks(MyBook).Worksheets("Sheet1").Cells.Copy Destination:=MyRange
 End Sub

なら、標準モジュールなら出来ますね。ただし、私の場合、シートにマクロを組んでるんですよ。。。これじゃ、まるまる移ってしまいますよね。。。(トホホ)

(INA)さま、ご返答ありがとうございます。

早速、熟読してみます。

(やっぱり、標準モジュールにすべきかな?)     (マクロ)


 (*'ω'*)......ん?シートにコードがあっても、コピーされないはず・・・。_/ ̄|○ il||li

 >直書きなので間違えるかも。
 良くこんなのを直打ちできますね・・・_/ ̄|○ il||li
 (川野鮎太郎)

(INA)さま、ありがとうございます。
出来ました。凄いですね。感心です。。。ありがとうございました。

(川野鮎太郎)さま、私が、上記コードをシートのコードにコピペしたところ、book2にも、マクロが移りましたが。。。でも、

 Workbooks(MyBook).Worksheets("Sheet1").Cells.Copy 
に、なってますよね。。。

すいません、私には分かりませんが。。。   (マクロ)


 きっと何かの勘違いでしょう・・・(;^_^A アセアセ
 (川野鮎太郎)


 これでいいんじゃない? 余分な変数が多い・・・

 Sub Test()
   Dim Mine As Workbook

    Set Mine = Workbooks.Add

    ThisWorkbook.Worksheets("Sheet1").Cells.Copy _
    Destination:=Mine.Worksheets("Sheet1").Range("A1")

 End Sub

 ps.1シートだけだったのね・・・前回のコードは無駄だった(*_*)

 >良くこんなのを直打ちできますね・・・_/ ̄|○ il||li
 でも誤記が多くて・・・ 鮎さんにフォローしてもらって助かってます。
  (INA)


 INAさん、おはようございます。
>前回のコードは無駄だった(*_*)
 私はINAさんの最初の見て、( ̄0 ̄;アッ そっか、全部のシート対象にしなくては・・・と思いましたよ^^;
 でも、INAさんのあとのと、私のは同じようなものですよね。
 (新規ブックを作ってか、他のブックかの違いはありますけど)
 それで、シートモジュールが貼りついたってのが???なんですよね(;^_^A アセアセ

 >でも誤記が多くて・・・ 鮎さんにフォローしてもらって助かってます。
  シー♪|| ̄ー)b (ー ̄;) 
 フォローじゃないです(^_^A; でもあれっきりですよね(^_^A;
 (川野鮎太郎)


 >上記コードをシートのコードにコピペしたところ、book2にも、マクロが移りましたが
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   ↑
 これの意味が何だか・・・

 >INAさんのあとのと、私のは同じようなものですよね。 
 両方ともセルをコピーしているので、問題ないはずです。
 私も何かの勘違いだと思います。
  (INA)

(川野鮎太郎)さま、 (INA)さま、分かりました。私の勘違いのようです。

ところで、

> マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので

私も含め、皆さんがよく口にするマクロウイルス。私も、おそらくは、分かっているようで分かっていないような気もします。

もし、宜しければ、簡単に御説明頂けませんでしょうか。宜しくお願い致します。

(マクロ) ← 私もウイルス?


 参考にどうぞ。
http://e-words.jp/w/E3839EE382AFE383ADE382A6E382A4E383ABE382B9.html

 >← 私もウイルス? ←少し笑っちゃいました(^_^A;
 (川野鮎太郎)


 試しに作ってる最中に何度自爆したことか・・・  (ΦwΦ;)″


 また笑っちゃった(;^_^A アセアセ

(川野鮎太郎)さま、ありがとうございます。

いろいろと勉強になりました。また宜しく御願いします。   (ウイルス)


(川野鮎太郎)さま、 (INA)さま、先日はありがとうございました。

再度、お助けを願いたいのですが、宜しいでしょうか?

お教え頂きましたマクロで、新規ブックに、データをコピーして、マクロも組み込まれないことは確認致しました。

残りの希望としまして、

@ 行の高さ・列の幅を元のままで

A 数式が多く含まれているため、リンクの更新メッセージが出ます。これを出ないように

以上のようにしたいのですが、どのように修正すれば宜しいでしょうか?

宜しくお願い致します。   (マクロ)


 >@ 行の高さ・列の幅を元のままで
 Cells.Copy ならできるでしょ? 

  (INA)

(INA)さま、ごもっともですね。Aは、ずっと悩んでますが、分かりません。セル内の値(数式ではなく)をそのまま抜き出すには、どうすればいいのでしょうか?
     (マクロ)


 形式を選択して貼り付け→値
 を利用しては?

  (INA)

(INA)さま、ありがとうございます。
何とかできそうです。      (マクロ)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.