見出し画像

Excel VBAでHTMLタグを削除する方法

Excel VBAを使用して、特定のファイルからHTMLタグを削除する方法について解説します。このコードは、指定したHTMLファイルから<html>タグを削除し、変更内容をファイルに保存するものです。プログラミング初心者にもわかりやすいように、コードの各部分を詳しく説明します。

「●」の部分のフォルダーパスを入力して下さい

コードの解説

以下が今回使用するVBAコードです。

Sub RemoveHTMLTag()
    Dim filePath As String
    Dim fileContent As String
    Dim fileLine As String
    Dim fileNumber As Integer
    Dim outputFileContent As String
    
    ' ファイルパスを組み立てる
    filePath = "● & ".html"
    
    ' ファイル番号を取得
    fileNumber = FreeFile
    
    ' ファイルを開く
    Open filePath For Input As #fileNumber
    Do While Not EOF(fileNumber)
        Line Input #fileNumber, fileLine
        fileContent = fileContent & fileLine & vbCrLf
    Loop
    Close #fileNumber
    
    ' <html>タグを削除
    outputFileContent = Replace(fileContent, "<html>", "")
    
    ' ファイルに書き込む
    fileNumber = FreeFile
    Open filePath For Output As #fileNumber
    Print #fileNumber, outputFileContent
    Close #fileNumber
End Sub

各部分の説明

1. 変数の宣言

Dim filePath As String
Dim fileContent As String
Dim fileLine As String
Dim fileNumber As Integer
Dim outputFileContent As String

この部分では、使用する変数を宣言しています。filePathはファイルのパス、fileContentはファイルの内容全体、fileLineはファイルの各行、fileNumberはファイル番号、outputFileContentは最終的に出力する内容を保持します。

2. ファイルパスの設定

filePath = "● & ".html"

ここで、処理するファイルのパスを設定します。filePath変数に対象のHTMLファイルのパスを代入します。

3. ファイルの読み込み

fileNumber = FreeFile
Open filePath For Input As #fileNumber
Do While Not EOF(fileNumber)
    Line Input #fileNumber, fileLine
    fileContent = fileContent & fileLine & vbCrLf
Loop
Close #fileNumber

FreeFile関数を使って、利用可能なファイル番号を取得します。その後、指定したファイルを開き、ファイルの終わり(EOF)に達するまで各行を読み込み、fileContent変数に格納します。ファイルの内容は改行を含めて連結されます。

4. HTMLタグの削除

outputFileContent = Replace(fileContent, "<html>", "")

Replace関数を使って、ファイルの内容から<html>タグを削除します。この結果がoutputFileContent変数に格納されます。

5. ファイルへの書き込み

fileNumber = FreeFile
Open filePath For Output As #fileNumber
Print #fileNumber, outputFileContent
Close #fileNumber

新しいファイル番号を取得し、元のファイルを開いてoutputFileContentの内容を書き込みます。これにより、元のファイルが更新され、<html>タグが削除された状態になります。

使用方法

  1. Excelを開き、Alt + F11キーを押してVBAエディタを起動します。

  2. InsertメニューからModuleを選択し、新しいモジュールを挿入します。

  3. 上記のコードをコピーして、モジュールウィンドウに貼り付けます。

  4. filePath変数に対象のHTMLファイルのパスを設定します。

  5. VBAエディタを閉じ、Alt + F8キーを押してマクロダイアログを開き、RemoveHTMLTagマクロを実行します。

実行結果

このマクロを実行すると、指定したHTMLファイルから<html>タグが削除され、ファイルに保存されます。

解説画像

以下に、コードの各ステップを視覚的に説明する図を生成しました。

1. ファイルの読み込みと内容の結合

2. HTMLタグの削除

3. ファイルへの書き込み

このようにして、Excel VBAを使用して簡単にHTMLタグを削除することができます。

この記事が気に入ったらサポートをしてみませんか?