dポイントプレゼントキャンペーン実施中!

ファイル

小林太郎   坊ちゃん
佐藤浩市   羅生門
  ・     ・
  ・     ・

空白はタブ区切り

のようなもので、一行だけ、削除したいのですが、やり方がわかりません。わかる方いらっしゃいましたら、ご教授願います。

A 回答 (4件)

簡単なのは、FSOなどを使って、


1.一行ずつ読み込み、
2.削除対象業以外を別ファイルなりに書き込み、
3.元ファイルと置き換える
だと思います。 

ADOでTSVにアクセスして、SQLで対象行を削除することも可能と思いますが、ファイルが完全でないと、うまくいかない可能性があります。
https://qiita.com/t-yama-3/items/8d219835018b9ba …
    • good
    • 2
この回答へのお礼

丁寧な回答ありがとうございます。

お礼日時:2021/12/03 11:00

No.3です。



>VBAとVB6.0が違うものなのは、分かっています。

質問者さんに対して記載した訳じゃなかったのですが、そう受け取ってしまわれたのならごめんなさい。
ただ

>VBAを扱っている方なら、VB6.0に詳しい

ここは正確には違うと思いますよ。
既にVB.NETになって20年程ですから、.NETはわかってもと言う感じはあるかもですし、そもそもVBAはそのアプリケーションに特化した言語でWordやAccessでも違うものではあります。
    • good
    • 0
この回答へのお礼

>質問者さんに対して記載した訳じゃなかったのですが、そう受け取ってしまわれたのならごめんなさい。

いえいえ。大丈夫です。

>>VBAを扱っている方なら、VB6.0に詳しい

ここは正確には違うと思いますよ。

そうですか。違うのですね残念です。

お礼日時:2021/12/03 14:05

VBAとVB6.0は違うものですけど。



1行だけ削除って削除する箇所はどこになるのでしょう?
あとは別ファイルに削除したい行以外を書き込んでってのもありかと。
⇒Excelのシートのようには出来ませんし、テキストエディタで開ける物であればそっちの方が簡単とは思いますけど。
    • good
    • 0
この回答へのお礼

VBAとVB6.0が違うものなのは、分かっています。VBAを扱っている方なら、VB6.0に詳しいかと思い、こちらで質問させていただきました。

やはり、別ファイルに保存ですか。

ありがとうございました。

お礼日時:2021/12/03 10:57

おはようございます。



ExcelのVBAでの質問で良いでしょうか?

ファイルの行が固定なら、下記のリンクの様に、
Rows(2).Delete ’で2行目が削除されます。1行目なら、Rows(1).Delete

https://www.tipsfound.com/vba/08007

ファイルという文字を探して、削除ですと、例えば下記の様に書けるかと。
(テストされる時は、念のためにコピーしたファイルで実施して下さい)

Sub Sample2()
Dim Rng As Range
Set Rng = Cells.Find(What:="ファイル", LookIn:=xlValues, LookAt:=xlWhole)
If Not Rng Is Nothing Then
Rows(Rng.Row).Delete
End If
End Sub

https://www.moug.net/tech/exvba/0050116.html
    • good
    • 0
この回答へのお礼

残念ながら、VBAでなくVB6.0の内容です。

でも、回答ありがとうございます。
参考にさせていただきます。

お礼日時:2021/12/03 10:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!