- 締切済み
エクセルマクロ
やりたいことは、毎回更新されて開くエクセルCSVの画面で、自分仕様にマクロの記録を行い、(枠固定や、セルの幅変更、色を付けておいたり)、そして再度 更新されたエクセルCSV画面がを開かれたときに、前回記録したマクロ設定された状態で開きたい。 現在は、CSVファイルが開かれると、自分の見やすいように操作して見ているのですが、これをいったん閉じて(毎回更新される内容なので保存しないで閉じています) またCSVファイルを開くとき繰り返し自分の見やすいように操作してから見ていますが、この見やすいようにする操作を毎回行わず設定するやり方を教えてください。 パソコンは詳しくないです、プログラムみたいな画面はさっぱりわかりません。 ちなみに、毎回更新されて開くCSVエクセルファイルは、フィルター選択で自分の見たい部分を選択して見ています。 職場で使用しているのでなるべくはやく解決したいです。
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- SI299792
- ベストアンサー率47% (772/1616)
CSV のファイル名・罫線の形・色を付ける位置は決まっているのでしょうか。 であれば、VBA は必要ありません。 データのテキストファイルを使えば、書式を崩さずに、読み込めます。 テータタブ テキストファイル ファイルを指定 インポート ファイル形式を選択して次へ 区切り文字を指定して完了 (データの取り込みが出てきます) プロパティを押す。 列の幅を調整するのチェックを外す。 OK OK その後、列幅・色・罫線を変更します。 このエクセルファイルは保存して下さい。 この後A1を右クリックして、更新を選択しただけで、新しいCSV が取り込まれます。 データの取り込みの所で、$A$1以外を指定すれば、A1以外の所に、データを取り込むことができます。 この場合、指定したところ(B2からデータが始まっているならB2)で右クリックします。 決まっていないのなら、どういう条件で色付け等を行うのか、書いて下さい。
まだエクセルマクロって生きています。 以前は、Docmd とか、メニューバーの3段目から(表示)上から4番めをクリックしたのと同義・・・と記述したもんです。 一連のマウス作業を名前を付けて保存するのが「マクロプログラム」でした。 進化してBASIC言語で肩代わりするのが出来て、それをvbaとか言います。 提携の作業をコードで・・・なんですが、プログラムするには辛いです。例えば、無条件で3行目を赤くする・・・てのはできますが、ある場合とある場合は、とういう「場合」が人間でなくてな分析出来ない項目である場合はほぼ無理。 今回も「自分の見やすいように」が分かりません。 で、プログラムが人間に合わせるのか、人間が表計算ソフトウェアに合わせるのか、だと思います。 最初の段階で、どうしてエクセルCSVなのでしょう? これの、全体ではなく、個人情報を抜いたファイル一部が見えれば、もう少し突っ込んだ話ができると思いますが。
- HohoPapa
- ベストアンサー率65% (455/693)
csvファイルにマクロを記憶することができませんし csvファイルに罫線やセルの色などを記憶することもできませんから、 必然的に、期待のマクロを記憶するブックを 別なブックとして用意する必要があります。 そこで、 csvファイルを開いてからマクロの記録を開始するのではなく... ・新規のブックを開く ・記録を開始する ・この新規ブックのファイルメニューから辿ってcsvを開く ・罫線を引いたり、色を染めたりする。 ・記録を終了する ・csvを閉じる ・マクロを記録したブックを拡張子xlsmとして保存して閉じる。 次回からは マクロブックを開き、 記録したマクロを実行すると csvが開き、記録した操作が行われます。 マクロブックは適当なタイミングで閉じます。 ここまでできるようになれば 記録したマクロをそれなりに読めるようになり、 記録に頼らず、 多少なりとも、 マクロを自分で書き換えることができるようになるんじゃないかと思います。
お礼
ありがとうございます、やってみます!
- bunjii
- ベストアンサー率43% (3589/8249)
>現在は、CSVファイルが開かれると、自分の見やすいように操作して見ているのですが、これをいったん閉じて(毎回更新される内容なので保存しないで閉じています) 保存せずに閉じればマクロを記録しても残りません。 >またCSVファイルを開くとき繰り返し自分の見やすいように操作してから見ていますが、この見やすいようにする操作を毎回行わず設定するやり方を教えてください。 マクロを記録してその結果を保存しておかないと再利用ができません。 >パソコンは詳しくないです、プログラムみたいな画面はさっぱりわかりません。 VBAの学習が必要になるでしょう。 >職場で使用しているのでなるべくはやく解決したいです。 先輩や上司と相談する内容のようです。 作業効率を上げればあなたの労力が単位時間当たりの価値を上げることになります。 従って、職場での付加価値が上がり利益が増えることになるでしょう。 例え少額と言えども塵も積もれば何とやらで、あなたの評価も上がるでしょう。 上司は部下を指導して効率の良い仕事ができるようにする役目も担っています。 第三者の助けを借りずに職場内で対処することをお薦めします。
お礼
ありがとうございます、やってみます!