[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBA 書式を保持したままテキスト保存したいのですが。』(アヒル )
1つのブックにシートが10枚あり、うち1枚が集計シート、9枚がデータシートみたいなものを作成してます。
集計シートのA1セルに主キーを入力すると、データシートから必要なデータを集計して、集計シートに表示させる、こんな感じです。
数式も複雑で、データも1シートあたり2万件ほどあり、かなり重くなってしまいました。
そこで、主キーを入力したら、集計シートのみを新規ブックにテキスト保存したいのですが、なかなかうまくいきません。
書式保持のままテキスト保存する方法と、VBが書かれているコマンドボタンを無効にするか、ボタン自体を削除する方法もお願いします。
なお、新規のブック名とシート名は主キー(主キーをそのままブック名、シート名にする)とし、保存先は「集計群」フォルダを考えています。
< 使用 Excel:Office365、使用 OS:Windows10 >
1)集計シートをアクティブにして
2)テキスト形式で、名前を付けて保存する
(マナ) 2020/05/17(日) 09:03
FileFormat:=xlTextだけでは書式がグチャグチャになってしまいます。
できればコマンドボタンも削除したいです(無効でも)
(アヒル ) 2020/05/17(日) 09:37
私が理解違いをしてるだけかもしれませんが、テキスト形式で保存するということであれば
・書式保持のままテキスト保存 → 「セルの書式設定」のことなら無理 ・できればコマンドボタンも削除したいです(無効でも) →そもそも保存できない
あたりはすぐにわかりそうな気がするんですが・・
(もこな2 ) 2020/05/17(日) 10:02
書式保持のままテキスト保存する
とあるので、たぶん数式を値にしたいのではないかと想像します。
Sub sample()
Sheets("集計シート").Copy
With ActiveSheet .Buttons.Delete 'フォームのボタンを消す場合はこちら .OLEObjects.Delete 'ActiveXのボタンを消す場合はこちら .Cells.Copy .Cells.PasteSpecial Paste:=xlPasteValues .Range("A1").Select End With
Application.CutCopyMode = False
End Sub
ボタンはフォームのボタンとActiveXのボタンで消し方が違うみたいです。 どちらか片方だけの記述でいいです。 わからなければ両方あっても大丈夫と思います。
AxtiveXのボタンを消す方は、ボタンだけでなく他のActiveXのオブジェクトも消えますが、 質問の内容から特に問題ないように勝手に判断しました。
文字化け部分があったので修正しました。
(tora) 2020/05/17(日) 11:22
>書式を保持したまま
この意味が解りません。 質問者の言う書式とはなんですか? 表示形式の事なら、その状態で文字として保存されるはずです。 (普通に保存形式をCSVで保存した場合)
尚、数値を数値として保存することはできません。 文字で保存されます。 office13から今現在はどうなっているのか知らないけど、多分ファイルサイズを協力小さくするために文字情報しか保存できないのでは。
(BJ) 2020/05/17(日) 11:53
※ 出来ないものもあるでしょうが、一番近くて簡単じゃあないでしょうか
(チオチモリン) 2020/05/17(日) 17:07
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.