|
こんにちは。超初心者ですがご相談に乗っていただけると嬉しいです。
【目的】
数字・文字が羅列されたテキストファイルより
データを抽出しエクセルの列にうめていきたい
テキストファイル例:※(文字)以外全て半角数字になります。
.TextFileFixedColumnWidths =
Array(10, 15, 5, 8, 3, 5, 10(文字), 5, 10(文字), 2, 6, 6, 6, 6)
【現在の状況】
10桁分の文字が文字は全角・・空白は半角
文字数は行によってデータがすべて異なります。
抜粋例:
1行目・〜19712江戸川区・・・・・・98763〜
2行目・〜19876西区・・・・・・・・09876〜
※恐らくこの条件が災いを招き文字が始まる列から
完全に文字化けしてしまう状況です。
【現在のコード】
Range("A1:N1").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.ShrinkToFit = False
.MergeCells = False
End With
Selection.Font.Bold = True
Range("A2").Select
With ActiveSheet.QueryTables.Add(Connection:="TEXT;C:\Documents and Settings\Owner\My Documents\でーたもと.txt", Destination _
:=Range("A2"))
.Name = "でーたもと."
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = xlWindows
.TextFileStartRow = 1
.TextFileParseType = xlFixedWidth
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 1, 1, 1, 1)
'ここで2文字列指定をしているので文字化けする理由がわからないのです。
.TextFileFixedColumnWidths = Array(10, 15, 5, 8, 3, 5, 10, 5, 10, 2, 6, 6, 6, 6)
'ケタ数を其々指定して列に割り振るコードのつもりです。
.Refresh BackgroundQuery:=False
End With
Cells.Select
With Selection.Font
.Name = "MS Pゴシック"
.Size = 9
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Range("A1").Select
Columns("A:A").EntireColumn.AutoFit
Columns("B:B").EntireColumn.AutoFit
Columns("C:C").EntireColumn.AutoFit
Columns("D:D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Columns("H:H").EntireColumn.AutoFit
Columns("I:I").EntireColumn.AutoFit
Columns("J:J").ColumnWidth = 9.5
Columns("J:J").EntireColumn.AutoFit
Columns("K:K").EntireColumn.AutoFit
Columns("L:L").EntireColumn.AutoFit
Columns("M:M").EntireColumn.AutoFit
Columns("N:N").EntireColumn.AutoFit
'Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess,
'OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
':=xlPinYin
'Selection.Subtotal GroupBy:=4, Function:=xlSum, TotalList:=Array(10), _
'Replace:=True, PageBreaks:=False, SummaryBelowData:=True
End Sub
'ここで4列目でグループを組んで10列目の数字の
合計を計算させたいと考えております。
/////////////////////////////////////////////////////////////
まったくの初心者なので、
ExcelパーフェクトマスターVBAという本を購入してみましたが、
今回の現象についてコードをうまくなおせませんでした。
どんな事でも結構ですのでご指摘ご相談・ご教授頂けたらとおもいます。
|
|