[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロの消去』(マクロ)
いつも楽しく拝見しています。
マクロを組んでみたんですが、マクロでマクロを消すことって出来るのでしょうか?
やりたいことは以下のとおりです。
原本にマクロのコード → マクロ実行にて別名にて保存 → 別名にて保存したファイルを開くと、マクロが消去されている(原本はそのまま)
別名にて保存までは分かるんですが、マクロがない状態にしたくて。。。容量を減らすためにも、どなたか御教授願います。
マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので このような場所では教えてもらえないと思います。
(川野鮎太郎) 確か以前σ(^_^;)も同じ質問したような・・・(T▽T)アハハ!
新規ブックにシートのデータをコピーして下さい。
> マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので 2003だと使えないですしね。 (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 (川野鮎太郎)
(川野鮎太郎)さま、私が、上記コードをシートのコードにコピペしたところ、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)
ところで、
> マクロでマクロをいじるのは、ある意味マクロウイルスみたいなものなので
私も含め、皆さんがよく口にするマクロウイルス。私も、おそらくは、分かっているようで分かっていないような気もします。
もし、宜しければ、簡単に御説明頂けませんでしょうか。宜しくお願い致します。
(マクロ) ← 私もウイルス?
参考にどうぞ。 http://e-words.jp/w/E3839EE382AFE383ADE382A6E382A4E383ABE382B9.html
>← 私もウイルス? ←少し笑っちゃいました(^_^A; (川野鮎太郎)
試しに作ってる最中に何度自爆したことか・・・ (ΦwΦ;)″
また笑っちゃった(;^_^A アセアセ
いろいろと勉強になりました。また宜しく御願いします。 (ウイルス)
再度、お助けを願いたいのですが、宜しいでしょうか?
お教え頂きましたマクロで、新規ブックに、データをコピーして、マクロも組み込まれないことは確認致しました。
残りの希望としまして、
@ 行の高さ・列の幅を元のままで
A 数式が多く含まれているため、リンクの更新メッセージが出ます。これを出ないように
以上のようにしたいのですが、どのように修正すれば宜しいでしょうか?
宜しくお願い致します。 (マクロ)
>@ 行の高さ・列の幅を元のままで Cells.Copy ならできるでしょ?
(INA)
形式を選択して貼り付け→値 を利用しては?
(INA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.