No.3ベストアンサー
- 回答日時:
補足について、
>最後の行までとんでいってしまいます。
変数Output_Sheetは定義されているでしょうか。定義してなければOn Error GoToで最後まで飛びます。
また、スペース区切りのファイルにならないと思いますので手を加えてみました。On Error GoToの処理も少し手を加えています。
後半部分です。
For lRowNumb = 5 To lLastRowNumb
For nColumNumb = 1 To 24
sData = Cells(lRowNumb, nColumNumb).Value
If nColumNumb < 24 Then '修正
Print #nFrn, sData & " "; '修正
Else '修正
Print #nFrn, sData '修正
End If '修正
Next nColumNumb
Next lRowNumb
Close #nFrn
Exit Sub '追加
HandleError:
エラー処理?
No.2
- 回答日時:
こんなかんじですか。
項目(A,B,..)が増えたら、そちらもFor-Nextで、変数で変えるといいです。
Cells(縦,横)で指定します。
がんばってくださいね。
'-----------------------
Sub saveCells()
'■ PRNファイル出力 -----
Dim iFrn As Integer
Dim loFF As Long
Dim strFname As String
Dim strA As String
Dim strB As String
'保存ファイル名(任意)
strFname = "SaveCells.prn"
'データのあるシート名を指定する
Worksheets("Sheet1").Activate
'保存ファイルを開く
iFrn = FreeFile(0)
Open strFname For Output As #iFrn
'1項目ごとに処理をする
For loFF = 2 To 5
'セルのデータを文字列でもらう
strA = Cells(loFF, 1).Value
strB = Cells(loFF, 2).Value
'ファイルに出力(半角空白区切り)
Print #iFrn, strA & " " & strB
Next loFF
Close #iFrn
MsgBox "保存終了しました" & vbCrLf & " File: " & strFname
End Sub
'----------------
では
この回答への補足
回答ありがとうございます。
一度教えていただいた方法でやってみました。
コードは以下になります。
(実際はA5~X5以下をテキストファイルにしようとして
います。)
On Error GoTo HandleError
Dim nFrn As Integer
Dim lRowNumb As Long
Dim sFilename As String
Dim sData As String
Dim lLastRowNumb As Long
Dim nColumNumb As Integer
'最終入力ライン抽出
Worksheets(Output_Sheet).Cells(65536, 1).End(xlUp).Select
lLastRowNumb = Selection.Row
sFilename = "C:\Usr\output.prn"
Worksheets(Output_Sheet).Activate
nFrn = FreeFile(0)
Open sFilename For Output As #nFrn
For lRowNumb = 5 To lLastRowNumb
For nColumNumb = 1 To 24
sData = Cells(lRowNumb, nColumNumb).Value
Print #nFrn, sData & " "
Next nColumNumb
Next lRowNumb
Close #nFrn
HandleError:
なぜか、最終入力ラインを抽出する
Worksheets(Output_Sheet).Cells(65536, 1).End(xlUp).Select
から次の行を読まずに最後の行までとんでいってしまいます。
何かコードに問題があるのでしょうか?
No.1
- 回答日時:
1.セル範囲A2~B5までを「新しいブック・単一のシート」にコピーする。
(1)シート名を右クリック。
(2)「移動またはコピー」で移動先ブック名を「新しいブック」にする。
2.ブック(シート)を「名前を付けて保存する」。
(1)タイプを「PRN」とする。
(2)ファイル名をダブルコーテーションで囲めば拡張子も指定可能。
上記をマクロで記録してみて、コードを読んでください。
> データの取り出し方法がわからず
DIM nFile as integer
OPEN パス+ファイル名 FOR INPUT AS #nFile
のようなコマンドを書けば読めます。
ヘルプの「OPEN」でも見てください。
> Writeを使うのはCSVファイルにする方法しか分からない
Print #xxをみてください。
この回答への補足
教えていただいた方法でやってみました。
On Error GoTo HandleError
Sheets(Output_Sheet).Select
Sheets(Output_Sheet).Copy
ActiveWorkbook.Rows("1:4").Select
ActiveWorkbook.Selection.Delete Shift:=xlUp
ActiveWorkbook.SaveAs Filename:="C:\USR\output.prn", FileFormat:= _
xlTextPrinter, CreateBackup:=False
HandleError:
現在は、一旦シートをコピーして
不必要な行(1行目~4行目)を削除してそれを保存する、
という方法にしております。
しかし、なぜかActiveWorkbook.Rows("1:4").Selectの後に、
Deleteする行(ActiveWorkbook.Selection.Delete Shift:=xlUp)から下
をとばしてプログラムの最後までいってしまいます。
コードに何か問題でもあるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
- その他(Microsoft Office) PCのHDの空きを増やすために,ONE driveのフォルダーを限定しましたが,容量が増えません? 4 2022/08/04 14:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- その他(プログラミング・Web制作) Windowsのマクロプログラムで、こんなことできますか? 3 2022/06/28 14:30
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) エクセル 任意の列数で分割する方法 3 2022/07/31 14:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
【ExcelVBA】zip圧縮されたCSV...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
ワイルドカード「*」を使うとう...
-
【困っています2】VBA 追加処...
-
VBA シート名が一致した場合の...
-
EXCEL VBA 単語置き換え につい...
-
ExcelのVBAです。フォルダ内の...
-
エクセル VBA 他シートの行を選...
-
エクセルVBAで書式と値の貼付け...
-
VBA 別ブックからコピペしたい...
-
VBS Bookを閉じるコード
-
マクロで最終行を取得したい
-
【前回の続き続きです、ご教示...
-
クリップボードに貼付している...
-
Excel-VBAでのファイルの開き方
-
VBAで別ブックのシートを指定し...
-
【マクロ】違うフォルダにある...
-
VBSでExcelのオープン確認
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
別ブックをダイアログボックス...
-
ワイルドカード「*」を使うとう...
-
エクセルのマクロについて教え...
-
エクセルのマクロについて教え...
-
VBS Bookを閉じるコード
-
【ExcelVBA】インデックスが有...
-
VBA コードを実行すると画面が...
-
【ExcelVBA】zip圧縮されたCSV...
-
vbaでvbaProjectのパスワード解...
-
VBAで別ブックのシートを指定し...
-
ExcelのVBAです。フォルダ内の...
-
vbaで他のブックに転記したい。...
-
フォルダ内の全てのファイルに...
-
VBAで複数のブックを開かずに処...
-
VBSでExcelのオープン確認
-
VBA 実行時エラー 2147024893
-
【Excel VBA】書き込み先ブック...
-
VBA シート名が一致した場合の...
おすすめ情報