A 回答 (7件)
- 最新から表示
- 回答順に表示
No.7
- 回答日時:
あれ?
既に解決済みかと思ってました。
Dictionaryでジャグ配列的な物。
行・列のインデックスは0から始まります。
なのでこの場合は、
(0)(0) (0)(1) (0)(2)
(1)(0) (1)(1) (1)(2)
(2)(0) (2)(1) (2)(2)
となります。
Sub megu()
Dim myDic As Object
Dim buf As String, myPath As String
Dim n As Integer
Set myDic = CreateObject("Scripting.Dictionary")
n = 0
'テキストファイルはBookと同じフォルダにあるとして
myPath = ThisWorkbook.Path
Open myPath & "\xyz.txt" For Input As #1
Do Until EOF(1)
Line Input #1, buf
myDic.Add n, Split(buf, vbTab)
n = n + 1
Loop
Close #1
Debug.Print myDic(0)(0), "|", myDic(1)(1), "|", myDic(2)(2)
Set myDic = Nothing
End Sub
出力例:
111 | BBB | ううう
No.5
- 回答日時:
No.2です。
個人的ですがExcelならSheetを前提としますが他のアプリならそうではないでしょうから、私ならDictionaryオブジェクトでキーをナンバーリング、アイテムを1次元配列にしたジャグ配列にしますかね。
そうすると後からある行を追加・削除も行数がわかっていれば簡単ですし、不明でも検索させるのは可能でしょうから。
とスマホだとここまでで精一杯。
No.4
- 回答日時:
こんにちは
◇まともにやるなら、テキストとして1行ずつ読み込み、tabを区切りとして分解するという手順になると思います。
・テキストファイルをopenして読み込む
http://officetanaka.net/excel/vba/file/file08b.htm
・区切り文字で文字列を分解(1次元配列になります)
https://docs.microsoft.com/ja-jp/office/vba/lang …
◇別法として、tab区切りのファイルとしてシートに読み込み、値のある範囲をまとめて配列に読み込むという方法も考えられます。
(多分、こちらの方法の方が簡単かと思います)
・テキストファイルをブックとして開く
https://docs.microsoft.com/ja-jp/office/vba/api/ …
(tab区切りの場合は、Formatの区切りを1にします)
・値のある範囲を配列変数に読み込む
ary = Range.Value
で、二次元配列としてまとめて取得できます。(Variantの必要があります)
https://docs.microsoft.com/ja-jp/office/vba/api/ …
対象とするRangeには、UsedRangeを利用すれば良いでしょう。
https://docs.microsoft.com/ja-jp/office/vba/api/ …
No.2
- 回答日時:
どういう配列(1次元・2次元・ジャグなど)にしたいかで変わりそうですね。
1次元なら既出ですが、加えて先に改行コードをタブに置換する必要はあるでしょう。
2次元なら既出の方法で改行コードで区切った変数の値を1つずつ別の変数(2次元で準備した物)にタブで区切って入れていくとかかな。
スマホなので詳しくは書けずごめんなさい。
No.1
- 回答日時:
こんにちは。
タブ区切りの文字を配列に入れるには、Variant型の配列と、後はSplitで、
vbTab(VBAの予約語で、tabを意味する)を指定すれば、可能かと思います。
Dim mySplitDat As Variant
mySplitDat = Split("文字列や変数など", vbTab)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
推しミネラルウォーターはありますか?
推しミネラルウォーターがあったら教えてください
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
映画のエンドロール観る派?観ない派?
映画が終わった後、すぐに席を立って帰る方もちらほら見かけます。皆さんはエンドロールの最後まで観ていきますか?
-
海外旅行から帰ってきたら、まず何を食べる?
帰国して1番食べたくなるもの、食べたくなるだろうなと思うもの、皆さんはありますか?
-
天使と悪魔選手権
悪魔がこんなささやきをしていたら、天使のあなたはなんと言って止めますか?
-
文字列からタブコードを取り除きたい
Visual Basic(VBA)
-
【VBA】テキストファイルを指定行数からの読み込み
Visual Basic(VBA)
-
特定フォルダ内のテキストファイルの内容を全てエクセルに書き出す方法
Visual Basic(VBA)
-
-
4
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
5
Excel VBA Tabコードの出力
Excel(エクセル)
-
6
配列でデータが入っている要素を求める方法
Visual Basic(VBA)
-
7
【Access2003】VBAでタブ区切りテキストファイル読込
Visual Basic(VBA)
-
8
VBAでテキスト出力時のスペースについて
Visual Basic(VBA)
-
9
split関数で区切り文字がない場合
Visual Basic(VBA)
-
10
既存のテキストファイルを開く方法
Visual Basic(VBA)
-
11
Excel.VBA テキストファイルを指定行数からの読み込む
Excel(エクセル)
-
12
Application.Runエラー(1004)
Excel(エクセル)
-
13
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
14
Excel VBAでフォルダ内の全テキストファイルの任意データを取得について
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで数値を全角文字(カ...
-
CSVファイルの中で、「 , 」カ...
-
VBScript 日付の比較について
-
Excelについて質問です。 セル...
-
カンマ区切り
-
EXCEL2010のVBA(マクロ)でカン...
-
SQL 副問い合わせ
-
(エクセル)特定のスペースを...
-
エクセルVBAの文字列操作について2
-
マクロを使ってフォルダー内に...
-
「カンマ」と「コンマ」は同じ...
-
open office 4.0.1でCSVをカンマ
-
パス区切りの文字について
-
データにカンマが入ったCSVデー...
-
データグリッド内の数値をカン...
-
エクセル セルの書式設定 ユ...
-
半角・全角の由来
-
「何とかで始まり、何とかで終...
-
Excel・ユーザーフォームの情報...
-
数字を文字列に変換し短縮化する
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CSVファイルの中で、「 , 」カ...
-
エクセルで数値を全角文字(カ...
-
EXCELからCSVにすると余計なカ...
-
マクロを使ってフォルダー内に...
-
カンマ区切りの数字をCSVフ...
-
CSVの定義
-
WORDで改ページすると時々グレ...
-
データにカンマが入ったCSVデー...
-
何故、日本は未だに数字を3桁...
-
[VBA][Excel]クリップボードか...
-
VBAでtxtファイルを読み込む際...
-
VB2005のTextBoxでカン...
-
JPY ¥1,500.00は日本円でお幾ら?
-
C#で、テキストボックスの入力...
-
ひとつの命令を複数行に記述
-
PHP カンマをエスケープしたい...
-
メモ帳からエクセルにセル区切...
-
カンマ区切り
-
パス区切りの文字について
-
エクセル セルの書式設定 ユ...
おすすめ情報
書き忘れていました。
できれば1行ごとに区別したいので
二次元配列(行、tab区切りの文字列)
みたいな形に収めれれば理想です。