
EXCEL Microsoft365
VBAで、2行、179997列の2次元配列があります。
1行目には時刻、2行目には数値データがはいっています。
この配列について、A1セルをリサイズ、行列変換して出力することで、
A列に時刻、B列に数値データの一覧がほしいです。
しかし、出力すると、48926行目で、次の行以降が勝手にB列に折り返されて出力されてしまいます。
配列には正しくデータが入っていることを確認しているのですが、出力する際に、特定の行以降が次の行に出力されてしまい、
A列とB列に時刻が出力されてしまい、数値データが出力されません。
なお、48926行から179997行までは#N/Aとなっています。
データ数を少なくした場合(2行10列)で実行したときには問題なく出力されましたので、コード上に問題はないと思っています。
No.1ベストアンサー
- 回答日時:
こんばんは
当方はExcel2019ですが、Transposeで行列変換をして一気に代入しようとすると、ご質問と同じ事象が発生しますね。
試みに、1セルずつ出力してゆく方式にすれば、問題なく、正しく2列に出力できます。(処理に時間はかかりますが)
どうやら、Transpose関数特有の問題のように思われます。
「48925」が列数に関係する制限かと思いましたが、最大列数はもっと小さい(=16384)ので直接には関係ないようです。
ただし、シート関数等の場合には列数を超える配列計算ができないなどの制限がありますので、Transeposeが「シートの行列変換できれば良い」という発想で作成されているとすると、「それを超える制限であれば良かろう」としている可能性が考えられます。
(そもそもですが、Transposeは「シート関数」ですので・・)
上記の「1セルずつ代入する」方式でも問題ないと思いますが、処理時間がかかるので、別に「179997行×2列」の配列を作成しておいて、Transposeを使わずにメモリ上で行列変換を行えば、比較的時間をかけずにまとめて出力することが可能です。
(一時的にメモリを使いますが、クリアすれば問題ないでしょう)
早くにもご回答いただきましてありがとうございます。
確かにTranspose 制限でぐぐるといくつか記事がありました。
Transporseに制限があることはまったく存じておらず、
配列の出力の仕方をぐぐってばかりで見つけられませんでした。
ご指摘のように、配列を2つに分けて作成し、
Transposeを使用せずに出力するように組んでみます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA セル間のリンク修正につい...
-
【マクロ】並び替えの範囲が、...
-
VBAでCOPYを繰り返すと、処理が...
-
Vba Array関数について教えてく...
-
【VBA】 結合セルに複数画像と...
-
Excel VBA 選択範囲の罫線色の...
-
複数のExcelファイルをマージす...
-
【マクロ】開いているブックの...
-
改行文字「vbCrLf」とは
-
VBA 最終行の取得がうまくいか...
-
VB.net 文字列から日付型へ変更...
-
【マクロ】シートの変数へ入れ...
-
Excelのマクロについて教えてく...
-
vbs ブック共有を解除
-
【ExcelVBA】値を変更しながら...
-
vba textboxへの入力について教...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【ExcelVBA】5万行以上のデー...
-
Excelのマクロについて教えてく...
-
エクセルのVBAコードについて教...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
複数のExcelファイルをマージす...
-
【ExcelVBA】5万行以上のデー...
-
vbsでのwebフォームへの入力制限?
-
vba textboxへの入力について教...
-
Vba セルの4辺について罫線が有...
-
【マクロ】シートの変数へ入れ...
-
【マクロ】並び替えの範囲が、...
-
Vba Array関数について教えてく...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】開いているブックの...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
VBA 入力箇所指定方法
-
[VB.net] ボタン(Flat)のEnable...
-
VBAでセルの書式を変えずに文字...
-
vb.net(vs2022)のtextboxのデザ...
-
Excelのマクロについて教えてく...
-
改行文字「vbCrLf」とは
おすすめ情報