Open FName For Output As #Fno Set BaseFolder = oFs.getFolder(oSh.currentDirectory) 保存されてしまいます。 そのまま出力したければ、Print #を利用すればよろしいかと。 (3は端折っています。。), 2~4は ホットキーを押下 で「Ctrl + A」と「Ctrl + C」でクリップボードにコピー。 ・すべてスペース付きにして固定長にしたい場合 …, use TrimEnd to delete spaces after the word - yourString.TrimEnd, use TrimStart to delete spaces before the word - yourString.TrimStart, use Trim to delete spaces before, after or in between word - yourString.Trim, Thanks メモ帳で作成したCSVファイルを確認すると、スペースの数が違う場合があります。 それをそのままCSV出力すれば、質問文に書かれた状態のCSVファイルが出来上がって当然です。 下記のような空白を含むファイル(test1.txt)がある場合は、sed 's/ //g’ test1.txt とすれば空白が削除できます。また、空白を削除したファイルを出力する場合は、sed 's/ //g’ test1.txt > test01.txt とすれば、test01.txtに空白が削除されたファイルが生成されます と言うように、末尾にスペースがある物と、末尾にスペースが無い物が混在する事になります。 宜しくお願い致します。, 「指数 エクセル」に関するQ&A: Excel2013VBAで100%以上の処理で指数表示されて取得できない, 「csv 保存」に関するQ&A: Excel csv保存 列数が異なる場合に、余分にカンマをつけない(ヘッダとデータの列数を変える), 「テキスト 形式」に関するQ&A: メール送信 テキスト形式 HTML形式の使い分け, 「画像 アンダーバー」に関するQ&A: HTMLでHP制作、画像の横にアンダーバーが出てしまいます, 「指数 エクセル」に関するQ&A: エクセルで計算すると2.43E-19などと表示される。Eとは何ですか?, 「画像 アンダーバー」に関するQ&A: 写真データを永年保存するのは、CD_R、DVD_Rどちらがいいですか?, 「csv 保存」に関するQ&A: エクセルの1シートを項目別に別シートへ分ける方法, 「表 形式」に関するQ&A: エクセルで一つのブックにある複数のシートを一つのシートにまとめる。, 「テキスト 形式」に関するQ&A: ビジネスメールにおいてテキスト形式 HTML形式 どちらがいいのでしょうか?, 世の中の成功している男性には様々な共通点がありますが、実はそんな夫を影で支える妻にも共通点があります。今回は、内助の功で夫を輝かせたいと願う3人の女性たちが集まり、その具体策についての座談会を開催しました。, Excel csv保存 列数が異なる場合に、余分にカンマをつけない(ヘッダとデータの列数を変える), こんにちは 7/3 みかん 100円 Dim ファイル名 As String 多くの人は名前と通し番号の間にスペースが10個程度入り(名前の長さで違う)...続きを読む, >この例のキムラジロウの時のように、スペースの数が違って表示される理由がなぜなのか 十分理解出来ました。 "バナナ",10,200,2000 構いません。 別のセル(同じシート内)に抜き出したいのですが。 For j = 1 To 行数 buF = Replace(buF, M1, M2) Dim BaseFolder Dim buF スズキ○ハナコ○○○○○○○○○○○○○ 元データの末尾にスペースが無いデータは、スペースが無いまま、そのまま出力されます。 Range("A1:K30").SpecialCells(xlCellTypeFormulas, xlCellTypeConstants).Delete Shift:=xlToLeft 6,7,8,9,0, Dim newF ActiveWorkbook.Close Savechanges:=False Replace関数使い方を参照, Split関数は各要素ごとに区切られた文字列を、指定した区切り文字で分割し、一次元配列として返します。83行目の例では、カンマで区切り、tmpというバリアント型変数に格納しています。Split関数の返り値は配列のため、受け取る側の変数は『バリアント型』 or 『動的配列』になります。, tmp = Split(”2015/12/12 , テスト太郎 , 岐阜” , “,”), 不要なカンマを処理したら、そのデータを別のExcel形式のファイルへデータを書き込みます。, ここでは、件数が多くなることを想定し、QueryTablesを使用しています。QueryTablesは件数が多ければ多いほど効果を発揮しますが、少ない件数ではあまり恩恵は得られません。よってケース by ケースで使用してください。, 14行目 With WordBook.WorkSheet.QueryTables.Add(Connection=パス, Destination=基準セル), QueryTables.Addを使用する際には、必ずWordBook名、WorkSheets名(or 番号)を記述しなければいけません。もしくは、Setを使用し、あらかじめ変数に格納しておく方法もあります。, また、QueryTables.Addには使用できるプロパティが数多くあります。プロパティの使い方と設定方法は、MSDNを参照してください。, オブジェクトの名前を表す文字列型の値を設定(or 取得)します。この文字列は任意のものでOKです。例えば、Name = “20151212Test”でも可能です。, カンマ区切りで分割する場合は、TextFileCommaDelimiterプロパティをTureに設定します。, インポートするファイルのプラットフォームを指定します。上記の例では、プラットフォームは『Windows』で使用する、という定数を設定しています。このプロパティはデータインポートの時に使用されるコードを決定するためのものです。, この項目は無くてもいいかもしれません。MSDNの説明を参照すると、『規定値はテキストファイルウィザードで現在[元のファイル]に設定されている値』となっています。, とりあえず、ここまでのプログラムで『CSVデータ取り込み → 不要なカンマ削除 → 新規Excelブックに書き出し』までの処理は終了です。もっと考慮すれば、さらに高速な手法があると思います。Inputではなく、Binaryを使うとか・・・。, 今回のようにVBAでテキスト処理をするためには、極力高速化したほうが良いでしょう。件数が数千件~数万になれば、それだけ処理に時間がかかりイライラすることになります。とはいえ、まずは自分が考えた処理が正常に動作することが先決ですけどね。. タナカ○アイ○○○○○○○○○○○○○○,4,… Dim f For Each f In BaseFolder.Files WordPress Download Manager - Best Download Management Plugin, https://pasonal.com/wp-content/uploads/2015/12/VBA_Input_Thumbnail.jpg, 'ダブルコーテーションが奇数であり、かつ文字列の中にカンマが存在する場合、カンマを排除, (※256~511を割り当てると、他のアプリケーションからアクセス出来るようになる), QueryTables.Addメソッドの TextFileCommaDelimiter プロパティ, QueryTables.Addメソッドの TextFilePlatform プロパティ, 実践的なチュートリアルで、Photoshopの基本的な操作・テクニック・レタッチ・合成のポイント・応用まで幅広く学ぶことができます。, Open ステートメント ファイルをCSVにしました(件数約1万)。 今回は、「""」という表示になっていることが条件です。