• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル表をHTML化)

エクセル表をHTML化

このQ&Aのポイント
  • エクセル表をHTMLに変換する方法を教えてください。
  • セルの値を入れ替えてエクセル表をHTML化したいです。
  • マクロを使ってエクセル表をHTMLに変換する方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

参考に Sub convertHTML2()   Dim ws As Worksheet   Dim htmlFile As String   Dim i As Long, j As Long   Set ws = ThisWorkbook.Worksheets(1)     htmlFile = ActiveWorkbook.Path & "\ファイル名.html"   Open htmlFile For Output As #1   i = 1   Print #1, "<table>"   Do While ws.Cells(i, 1).Value <> ""     Print #1, vbTab & "<tr>";     j = 2     Do While ws.Cells(i, j).Value <> ""       Print #1, "<td>" & ws.Cells(i, j).Value & "</td>";       j = j + 1     Loop     Print #1, "<td>" & ws.Cells(i, 1).Value & "</tr>" & vbCr;     i = i + 1   Loop   Print #1, "</table>"   Close #1   MsgBox htmlFile & "に書き出しました" End Sub

nkmyr
質問者

お礼

おかげさまでうまくできました。 ありがとうございました。

その他の回答 (3)

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.4

横に何列も氏名と色2組で並んでいるのでしたら。 Sub Example() Dim ws As Worksheet Dim htmlFile As String Dim i, j As Long Set ws = ThisWorkbook.Worksheets(1) htmlFile = ActiveWorkbook.Path & "\ファイル名.html" Open htmlFile For Output As #1 Print #1, "<table>" For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row Print #1, vbTab & "<tr>"; For j = 1 To Cells(i, Columns.Count).End(xlToLeft).Column Step 2 Print #1, "<td>" & ws.Cells(i, j + 1).Value & "</td>" & "<td>" & ws.Cells(i, j).Value & "</td>"; Next j Print #1, "</tr>" & vbCr; Next i Print #1, "</table>" Close #1 MsgBox htmlFile & "に書き出しました" End Sub

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.3

> セルの位置もバラバラなので バラバラですか?2列しかデータ記載してませんよね。 たかだか2列の列の切り取り挿入なんて手間は大したことがないと思いますが。 2列じゃないのでしたら、本来のデータを示さないと書き替えたマクロは正しく機能しませんよ。

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.1

色の列を切り取り 名前の列を選択して「切り取ったセルの挿入」をすれば列が入れかわります。

nkmyr
質問者

お礼

セルの位置もバラバラなので切り取ったセルの挿入はものすごく手間がかかりますので…

関連するQ&A