なお編集の必要は無いので、読み込み・閲覧だけできればOKです。
製品版のソフトウェアですが、512列まで読み込めるようです。
■ザ・ターボシリーズ製品仕様
http://www.turbo-data.co.jp/j/product/price.html
http://www.turbo-data.co.jp/j/product/faq.html#03-03
Q: CSVファイル(カンマ区切り)(*.csv)やテキストファイル(タブ区切り又は固定長)(*.txt)はそのまま読み込むことができますか
A: 該当ファイルを直接開いて区切り文字や各項目のデータ型を指定して読み込むことができます(ウィザードによる読込)。
こんな、ハイスペックなものはいらないのですが....。
office2007より横が256列から16384まで読めるようになるようです。
http://itpro.nikkeibp.co.jp/article/NEWS/20060531/239523/
Microsoftからベータ版がダウンロード出来ます
http://www.microsoft.com/japan/office/preview/beta/getthebeta.ms...
ベータ版ですので
使用する場合は普段使うのとは別のOSを再インストールすることになっても構わないPCにインストールすることをおすすめします。
2007から、制限が外れるのは知っていました。
でも、IE7.0同様、Dual利用はできないですよね、きっと。
ありがとうございました。
「2」の方同様、悪くはないのですが、tsvが読めるとベターです。
我がまま言って、スイマセン。
>「2」の方同様、悪くはないのですが、tsvが読めるとベターです。
これってタブ区切りなだけですよね?
そのファイルをドロップしてもダメですか?
やってみましたが、残念ながらダメです。
空セル(tsvだと、\t\t)を詰めて読んでしまうので、正しく表示できませんでした。
'以下のスクリプトを Csv2Html.vbs などの名前で、デスクトップに保存してください。
'アイコンにCSVやtsvファイルをドラッグアンドドロップしてください。
'ブラウザに結果が表示されます。
Option Explicit
CONST MSG_TITLE = "CSV(カンマ・タブ区切り)--> HTML d=(^o^)=b"
Call Main()
'メイン処理
Sub Main()
On Error Resume Next
Dim objArgs
Dim i
Dim nArgCnt
Dim bRtn
Dim CsvFileName
'引数の有無チェック
Set objArgs = WScript.Arguments
nArgCnt = objArgs.Count
If nArgCnt = 0 Then
MsgBox "アイコンにCSVファイルをドラッグ&ドロップしてください。", vbExclamation, MSG_TITLE
Exit Sub
End If
If nArgCnt > 1 Then
MsgBox "ドロップは1ファイルのみです。", vbExclamation, MSG_TITLE
Exit Sub
End If
'引数より変換するCSVファイルのフルパスファイル名を取得
CsvFileName = objArgs(0)
'拡張子のチェック
If GetFileExt( CsvFileName ) = "CSV" _
Or GetFileExt( CsvFileName ) = "TXT" _
Or GetFileExt( CsvFileName ) = "TAB" _
Or GetFileExt( CsvFileName ) = "" Then
Else
MsgBox "ファイル名が正しくありません。", vbCritical, MSG_TITLE
Exit Sub
End If
'変換処理
Call Csv2Html(CsvFileName)
End Sub
'変換処理
Sub Csv2Html(ByVal sPath)
Dim objFS, objTXT
Dim sLine
Dim sAry
Dim i, iMax
Dim cnt
Dim sSepa
Dim sTag
Dim objHtm, sResultFile, sAttrib
Dim objIE
'ファイルを開く
Set objFS = CreateObject("Scripting.FileSystemObject")
Set objTXT = objFS.OpenTextFile( sPath, 1, False )
sResultFile = Left(sPath,Len(sPath)-3) & "html"
Set objHtm = objFS.CreateTextFile( sResultFile , True )
cnt = 0
objHtm.WriteLine("<html>")
objHtm.WriteLine("<style type=""text/css"">")
objHtm.WriteLine("<!--")
objHtm.WriteLine("TD.HD{")
objHtm.WriteLine(" background-color: MISTYROSE;")
objHtm.WriteLine("}")
objHtm.WriteLine("-->")
objHtm.WriteLine("</style>")
objHtm.WriteLine("<body>")
objHtm.WriteLine("<table border=""1"">")
Do Until objTXT.AtEndOfStream
'1行読み込む
sLine = objTXT.ReadLine
cnt = cnt + 1
'タイトル行より分割文字を判断
If cnt = 1 Then
If InStr(sLine,Chr(9)) = 0 Then
sSepa = "," 'カンマ区切り
Else
sSepa = Chr(9) 'タブ区切り
End If
End If
'タブで分割
sAry = Split(sLine, sSepa)
iMax = UBound(sAry)
'タイトル行を色づけ
If cnt = 1 Then
sAttrib = " class=""HD"" "
Else
sAttrib = ""
End If
objHtm.WriteLine("<tr>")
For i = 0 To iMax
If sAry(i) = "" Then
objHtm.WriteLine("<td " & sAttrib & "> </td>")
Else
objHtm.WriteLine("<td " & sAttrib & ">" & sAry(i) & "</td>")
End If
Next
objHtm.WriteLine("</tr>")
Loop
objHtm.WriteLine("</table>")
objHtm.WriteLine("</body>")
objHtm.WriteLine("</html>")
'ファイルを閉じる
objTXT.Close
objHtm.Close
'IEオブジェクトを作成します
Set objIE = CreateObject("InternetExplorer.Application")
'インターネットエクスプローラ画面を表示します
objIE.Visible = True
'指定したURLを表示します
objIE.Navigate sResultFile
End Sub
'指定したパスの拡張子を取得する
Function GetFileExt(ByVal sPath)
Dim fso
Dim sFileExt
Set fso = CreateObject("Scripting.FileSystemObject")
sFileExt = fso.GetExtensionName(sPath)
Set fso = Nothing
GetFileExt = UCase(sFileExt)
End Function
テキストエディタ(無料のものならサクラエディタなど)の正規表現を用いた置換でタブ文字「\t」をカンマ「,」に置換すればいいのではないかと思います。
ありがとうございました。
.....実は訳あって、読み込みたいファイルはtsvなんです。
ファイルを変換すればよいだけなので、これでも悪くは無いんですが、tsvファイルを256列セル制限なしで読めるアプリを教えてください。