• ベストアンサー

シート上に記述されたhtmlソースをUTF-8のhtmlファイルとして保存するには

エクセルのシート上に記述されたhtmlソースをUTF-8のhtmlファイルとして保存するにはどうしたらいいでしょうか? webページとして保存するマクロだけでは上手く出来ません。 宜しくお願いします。

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

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1415)
回答No.3

Dim S, A, Y, X Set S = ThisWorkbook.Worksheets(1) X = S.Cells.SpecialCells(xlLastCell).Row Set A = CreateObject("ADODB.Stream") A.Open A.Type = 2 A.Charset = "UTF-8" For Y = 1 To X     A.WriteText Cells(Y, 1) & vbNewLine Next A.SaveToFile "C:\~\hoge.html", 2 A.Close

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

回答No.4

Excel VBA で、 指定したシートの、指定したセルの値を取得する方法。 指定した列のセルを指定した範囲で順番に取得する方法。 これ、Excel VBA の基本だと思いますよ。 それこそ UTF-8 の件よりも多くのサンプルが転がっています。 と言うか本屋さんで平積みされているフルカラーの入門書にだって書かれています。 自力で検索する労力を惜しんで人に聞いてばかりいては後で困りますよ。 "excel VBA セルの値 取得" の検索結果 http://www.google.com/search?num=50&hl=ja&q=excel+VBA+%E3%82%BB%E3%83%AB%E3%81%AE%E5%80%A4+%E5%8F%96%E5%BE%97&lr=lang_ja&aq=f&aqi=&aql=&oq=&gs_rfai= "Excel VBA セル ループ" の検索結果 http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=excel+vba+%E3%82%BB%E3%83%AB+%E3%83%AB%E3%83%BC%E3%83%97&num=50 Dim sourceSheet As Worksheet Set sourceSheet = ThisWorkbook.Worksheets("シート名") Dim i As Long For i = 1 To 10 MessageBox sourceSheet.Cells(i, 1).Value Next "シート名" という名前のシートの A列 1行目から10行目をループさせてセルの値をメッセージボックスに表示するサンプル。

全文を見る
すると、全ての回答が全文表示されます。
回答No.2

> エクセルのシート上に記述されたhtmlソースをUTF-8のhtmlファイルとして保存するにはどうしたらいいでしょうか? > webページとして保存するマクロだけでは上手く出来ません。 ぶっちゃけて言うと VBA で UTF-8 のテキストファイルを作成したいってことでいいんですよね? シートの内容を UTF-8 の HTML 形式で保存したいわけじゃないですよね? (Excel を保存するときに選べる "Web ページ" とかみたいなやつ) 単純に utf-8 のテキスト書き出しなら ADODB.Stream を使うとか。 "VBA utf-8" だけで検索した結果です。 これぐらいなら質問する前に 1分も掛からず調べられると思うので、質問の意図を間違って理解してる可能性もありますが、、、 http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=vba+utf-8&num=50

udon0318
質問者

補足

回答ありがとうございます。 検索結果を元に色々試してはいたのですが、どうしても処理の方法が分からない部分がありました。 http://d.hatena.ne.jp/so_blue/20080617/1213670472 このページにある .WriteText "ほげふが" この部分をシートのA列にあるhtmlソースにしたいのですが、どうしたらいいのかが分かりません…。

全文を見る
すると、全ての回答が全文表示されます。
  • tom11
  • ベストアンサー率53% (134/251)
回答No.1

utf-8に直接出来ませんが htmlで、保存した後、ノートバットに ソースをコピーペーストして、utf-8として、 テキストファイルとして保存後 拡張子をhtmlに変換すれば良いと思います。

udon0318
質問者

補足

回答ありがとうございます。 説明不足で申し訳ございません。 そのような処理をエクセル上で一括処理させたいのですが、他の方法はないでしょうか? 宜しくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • excel html保存前にソース記述

    皆様お世話になります。 excelにて作成した表をhtml保存して、 web上から閲覧しております。 この表のデータは随時更新されるもので、 常時webページを開いていて、毎回更新して閲覧してます。 このwebページを自動リロードさせたいのですが、 保存済みのhtmlにソースを記述しリロードする事はできるのですが、 このhtmlは常に自動で上書きされるようになってますので、 excelから自動保存する際にリロードのソースを 記述させる事は可能でしょうか? また、その他の方法がございましたら、 どうぞご教示んのほど宜しくお願い致します。

  • エクセルでhtmlソースを吐き出させることはできないでしょうか?

    エクセルを使ってホームページを作っています。 最初のワークシートには、ホームページを作ってあります。 (文章とハイパーリンク) やりたいのは、次のワークシートに、最初のワークシートに作ったホームページのソースを表示させたいのです。これは可能でしょうか? (エクセルファイルをwebページとして保存し、外部ブラウザでソースを表示するのが一番簡単な方法だとは思うのですが、理由があって、エクセル上で完結させたいのです) よろしくお願いします。

  • 保存ファイルのシート集計について教えてください。

    同じ様式で保存しているエクセルファイル(各ファイルのシートは1~3)が10ほどあります。 この10の各ファイルのシート2のA1~H30部分を集計したいため、集計するファイルのシート1にファイル1のシート2のA1~H30部分を、シート2にファイル2のシート2のA1~H30部分を・・・・とシート10までをシート10までコピーして貼り付けたいのですが、ボタン一つで貼り付けのできるようなマクロができるでしょうか。 10のファイルは全て保存している状態でコピーができるでしょうか。 よろしく、お願いいたします。

  • エクセル:シートを保存するマクロ

    あるエクセルファイルFile.xls内に、4つのシートSheet1,Sheet2,Sheet3,Sheet4があるとして、 4つのシートを個別にcsvファイルとして保存するようなマクロを作りたいです。 ▼ソースです  (ここまでのコードで、Pathに保存先のディレクトリ名を取得する部分があるとお考えください)  Filename = "Sheet1" '保存するシート名は、Sheet1~4 GoSub Save1 Filename = "Sheet2" GoSub Save1 Filename = "Sheet3" GoSub Save1 Filename = "Sheet4" GoSub Save1 '保存完了後は、File.xls内Sheet1のCells(4, 1)にカーソルを配置。 Sheets("Sheet1").Select Cells(4, 1).Select Exit Sub Save1: Sheets(Filename).Select fname = Path & "\" & Filename & ".csv" ActiveWorkbook.SaveAs Filename:=fname, FileFormat:=xlCSV, CreateBackup:=False Return End Sub 以上のソースで実行すると、 指定したディレクトリにsheet1.csv、sheet2.csv、sheet3.csv、sheet4.csvの4ファイルができます。 ここまでは問題ないのですが、 マクロを実行後、Sheet4.csv(最後に保存したファイル)が開かれた状態になってしまいます。 しかも、ファイル名はSheet4.csvなのに、シートSheet1~4を持っている状態です。 普通にSheet4.csvファイルを開くと、シートはSheet4しかありません。 状態が伝わるでしょうか? File.xlsのマクロを実行しているので、実行完了後もFile.xlsを開いておきたいのですが、 どのような記述を加えればよいでしょうか? マクロ(VBA)は使い始めたばかりなので説明されても理解できないかもしれませんが、 できればよろしくお願いいたします。

  • エクセルで保存したものを開くと同時に2つのシートが開いてしまう

    あるものをエクセルで保存したのですが、ファイルを開くと、同時に2つのシートが開いてしまいます。ひとつだけのシートを開くようにするにはどうすればいいのでしょうか。よろしくお願いします。マクロは使用していません。

  • エクセルの保存時にSheet1で保存する

    いつもお世話になっております。 エクセル2016で他のシートでファイルを保存しても必ずSheet1で保存するようにしたいのですが。 目的は開くときに必ずSheet1で開いてくるようにしたいのです。 以前オープンマクロを自作したらエクセルが開かなくなってしまって非常に焦ったことがあるので出来れば保存時のマクロでお願いします。 尚、Sheet1にはオープンマクロが組んで有り必ずA列が表示されるようになっています。(問題ないでしょうか?) 過去にA列が隠れていたためにB列からデータを入力してしまい苦情になったことがあるので再発防止対策です。 その後シートが増えたので別のシートで保存してしまった場合の対策です。

  • マクロは保存するがシートは保存しない

    エクセルで, 標準モジュールMudule1に書いたマクロを保存したいが, ワークシートは保存したくない場合, どうすればよいのでしょうか。 (Mudule1以外にコードは書いてないし, ワークシート以外のシートはないため,) 「マクロは保存するがシートは保存しない」 という意味で結構です。

  • シート毎に保存

    1つのブックに50以上のシートがあります。 シート名をブック名(ファイル名)として、シート1枚ごとに 保存するマクロを教えて下さい。 マクロ自体分からない者ですが、

  • テキストをUTF-8で保存するため

    テキストをUTF-8で保存するため以下に http://madeinpc.blog50.fc2.com/blog-entry-308.html 『•文字コードを指定できるテキストエディタ(Terapadなど)』を使用するように 『「UTF-8」なので、メモ帳でそのまま保存したテキストファイルは使用できません』 との記述があります。 意味がどうも分かりません。Windowsに標準付属しているメモ帳で「名前をつけて保存→文字コード→UTF-8」としてやれば同じことではないかと思うのですが如何でしょう? よろしくお願いします。

  • エクセルファイルで保存する方法

    webでエクセルファイルをダウンロードしたつもりが、 中身はエクセルファイルですが、最後に「.htm」がついていて、 webページになっています。 デスクトップに保存すると、アイコンは、エクセルマークの後ろに 青い○がついた、確かにwebページ?といった感じのマークになっています。 私が保存したい形式はただのエクセルファイルで、 エクセルマークの後ろにテキストページを表すようなマークがついているもの。 ・・・スミマセン。素人で、うまく説明が出来ず。 仕事でダウンロードしたこのページを、「エクセルファイルで保存して納品してください」と言われています(;^_^A どうすれぱ普通のエクセルファイルとして保存できますか? ファイル→名前をつけて保存 で、ファイルの種類 で どうにか出来ないかと思い、すべて試みましたが、 webページとして保存されるか、テキストページになってしまうようで(><”) どなたかよろしくお願いします!

このQ&Aのポイント
  • マッチングアプリを始めたものの、興味を持てる男性に出会えず悩んでいます。
  • アプリでのやり取りに疲れ、ストレスが増えています。
  • アプリに依存するのもないと感じ、今後の方針に悩んでいます。
回答を見る