質問するログイン新規登録

Q&A

0回答

666閲覧

【Excel VBA】VBAにて抽出したシートをテキストファイルにて保存する際に最後の文字までで保存したい。

knk.k

総合スコア2

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

関数

関数(ファンクション・メソッド・サブルーチンとも呼ばれる)は、はプログラムのコードの一部であり、ある特定のタスクを処理するように設計されたものです。

0グッド

0クリップ

投稿2022/01/06 04:32

0

0

以前質問した内容の続きです。
「【Excel VBA】色のついたセルがある行を別シートにコピペする方法」
リンク内容

この処理後、各シートをテキストファイルにて保存しているのですが、
作り方がよくないのか、条件が抽出された最後行から改行した状態で保存されております。

この後、別ソフトに取り込む際に改行されているとそこにも情報があるとみなされてしまうので
一旦テキストファイルを開き、最後行までカーソルを戻し保存しなおしている状態です。

イメージ説明

「40」の下にカーソルがきていますが、最後の抽出内容の横(「福岡県」の後ろ)に
カーソルがくる状態か、もしくは最初の「27」の前でも構いません。

このようにするには、どういった方法がありますでしょうか?

添削頂けると幸いです。

Sub テキストデータで保存() Application.ScreenUpdating = False Dim shName As String shName = ThisWorkbook.ActiveSheet.Name Dim Sht2 As Worksheet Dim Sht3 As Worksheet Set Sht2 = Sheets("1.新規") Set Sht3 = Sheets("2.廃止、3.変更") 'アクティブシート(最前面に表示されているシート)を空の新規ブックにコピーする Sht2.Copy '新規ブックをテキスト形式で保存 Dim wb1 As Workbook Set wb1 = ActiveWorkbook wb1.SaveAs _ Filename:=ThisWorkbook.Path & "\" & "1.新規" & Format(Date, "yyyymmdd") & ".txt", _ FileFormat:=xlText '新規ブックは不要なので保存しないで閉じる wb1.Close savechanges:=False 'アクティブシートのクリア Sht2.Cells.Clear '空の新規ブックにコピーする Sht3.Copy '新規ブックをテキスト形式で保存 Dim wb2 As Workbook Set wb2 = ActiveWorkbook wb2.SaveAs _ Filename:=ThisWorkbook.Path & "\" & "2.更新" & Format(Date, "yyyymmdd") & ".txt", _ FileFormat:=xlText '新規ブックは不要なので保存しないで閉じる wb2.Close savechanges:=False 'アクティブシートのクリア Sht3.Cells.Clear End Sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.29%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問