• ベストアンサー

【Excel】VBAサンプルを実行すると、読み込んだファイルが読み取り専用になってしまう

http://www.geocities.jp/ttak_ask/office_docu/ef6.html こちらのVBAサンプルを実行すると、読み込んだファイルが読み取り専用になってしまいます。 読み取り専用にならないようにするには、どうしたらいいでしょうか。 (読み込んだファイルは、保存をしないで終了したいです)

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

  • ベストアンサー
  • onlyrom
  • ベストアンサー率59% (228/384)
回答No.2

  コードの下から、8行目の  FSO.GetFile(.FoundFiles(i)).Attributes = 1 これが読み取り専用にするコードです。 で、これを削除する。  

bari_saku
質問者

お礼

ご回答ありがとうございます。 属性で指定していたのですね。 コードの意味を全部調べていけばわかったと思うのですが、つい時間を優先させてしまいました。反省します。 1を0に変更して、希望していた結果になりました。 感謝です!!

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

【必ずお読みください 】 を読むと作成者に問い合わせるのが先だと思いますが、問い合わせても回答がなかったと言う事でしょうか。

bari_saku
質問者

お礼

エラー等の場合は報告した方がいいとは思うのですが、今回は別段エラーやバグというわけではないので、問い合わせてはいません。 また、bbsの書き込みは2007年のものが最終となっており、たとえ連絡したとしても、お返事が頂けるかどうかは疑問だと判断しました。 以上お答えいたします。

関連するQ&A

  • 【Excel】VBAのサンプルを一部修正したいのですが…

    http://www.geocities.jp/ttak_ask/office_docu/ef6.html こちらのサイトにサンプルが記載されています。 これを使いたいのですが、サンプルは統合するファイルの見出し行を1行としているのに対し、私は2行としたいのです。 書かれている内容を自分なりに解析し、あちこち色々変えてテストしてみたのですが、どうもうまくいきません。 詳しい方、どうかよろしくお願いします。

  • 【Excel】VBAのサンプルを2007でも使えるようにしたい

    ​http://www.geocities.jp/ttak_ask/office_docu/ef6.html​ こちらのサイトにサンプルが記載されています。 2007と2003でこれを使いたいのですが、2007でマクロを動かすと、エラーが出てしまいます。 調べてみました所、「With .FileSearch」が2007では使えないということなのですが、どうコードを書き換えたらいいのでしょうか。 (手元の本には、Dir関数を使用したファイル検索を使用します」とあるのですが、そちらは純粋にファイルを検索するという目的に使っていて、一方こちらはファイルを順番に読んでいく、という目的で使っているように思います。ですのでどうしたらいいのか、ちょっとわからないでいます) 詳しい方、どうかよろしくお願いします。

  • office365のexcel2016でのVBA

    社内のネットワークハードディスクにexcel2007で作成した簡単なVBAを組み込んだxlsmファイルを保存し、複数の端末で使用しています。excel2007が入った端末でVBAを実行するとものの1秒で処理が終了するのですが、office365のexcel2016が入った端末で実行すると数分間かかってしまいます。ところが、同じxlsmファイルを同端末のデスクトップにコピーしてexcel2016で開き、VBAを実行すると一瞬で処理が終わります。セキュリティの問題だと思うので、2016の「設定」から「セキュリティセンターの設定」に入り、色々いじってみたのですが改善しません。ファイルをNASに置いたままexcel2016でVBAを快適に動作させるにはどうしたら良いのでしょう?

  • 旧VBAがExcel2013で突然実行エラー

    Excel2003で作ったVBAマクロを互換モードで保存し、ずっとExcel2013で実行できていましたが、2014.12.13に実行しようとしましたら、 Sheets("当番表サンプル").Select で実行エラー(インデックスエラー)になってしまいました。 Excel2010で実行したら、通りました。 どういう理由でしょうか?

  • ファイルは読み取り専用であるか。。。

    office2003を使っています。 保存してあったexcel fileを開こうとしたとき “ファイルは読み取り専用であるか、または読み取り専用の場所にアクセスしようとしています。または、サーバー上に保存されているドキュメントから応答ありません。” こんなメッセージが出てファイルが開けません。 開くには先ず何から始めれば良いのでしょうか…よろしくお願いします。

  • Excel VBAで読み取り専用ファイルをコピー

    お世話になります。 Excel VBAでサーバーにある共有のExcelファイルを自分のPCにコピーするコードを作りました。 FileCopy "\\Server\サンプル.xls", "\\○○○\Users\Desktop\サンプル.xls" 通常は問題ないのですが、コピーするファイルが誰かに開かれていると、たぶん、読みとり専用となるためにエラーとなります。 読み取り専用の時でもエラーにならずにコピー出来る方法を教えて頂けないでしょうか? よろしくお願いします。

  • 「ファイルが見つかりません」VBAが実行できない

    今まで問題なく使えてたアクセスのファイルがあるのですが vbaコードを実行しようとしたら、ファイルが見つかりません と言うエラーがでてしまいます。 VBE画面を開いて、コンパイルしてみたのですが、どこでエラーになってるのか出ません。 何をしても、ファイルが見つかりません が出ます。 どうすればいいでしょうか? 2010です。

  • 読み取り専用ファイル

    USBメモリーを使用しています。OSはWIN2000、OFFICEは2003です。 これまで、このUSBメモリーに入っていたファイルの読み書きができていたのですが、ある日突然、どのファイルを開いても「読み取り専用」のファイルとしてしか開けなくなりました。ファイルのプロパティをみても、フォルダーのプロパティをみても、読取専用にチェックマークは入っていません。 読み取り専用ではなく、上書きをして保存したいのですが、毎回コピーして別のファイル名をつけて保存しなければいけないのが面倒です。  そもそも、これまで「読み取り専用」でなかったファイルがある日突然、USBメモリーに入っているすべてのファイルが「読み取り専用」になった理由とそれを元に戻す方法(ファイルを通常どおり読み書きできるファイルとして開く方法)が知りたくて質問しました。 よろしくおねがいします。

  • VBAで生成されたExcelファイルの閉じ方

    VBAで以下の処理を書いています。 ・Excelオブジェクトを生成する。 ・Excelファイルをオープンする。 ・各行を読取、Accessのテーブルに挿入する。 ・終了 といった処理を行っています。終了する前に読取ったExcelの オブジェクトを終了しないといけないと思っています。 Workbook.Close Set Workbook = Nothing とやると、Workbook.Closeの所でファイルを保存しますかといった メッセージが出てきます。単純に開いていたファイルを閉じたいだけ なのですが、どういった処理を書けばExcelのファイルを何もメッセージを 表示せずに閉じることができるでしょうか?

  • VBAを実行しないと開けないエクセルファイル

    タイトルのようなエクセルファイルを作りたいです。 閲覧者がVBAの実行を認めない限り、閲覧不可にしたいのです。もし認めない場合はメッセージボックス等で「開くことができません」と表示され、エクセルが閉じるようにしたいです。 どのようなVBAのプログラムを組めば実行できますか?

専門家に質問してみよう