
A 回答 (4件)
- 最新から表示
- 回答順に表示
No.4
- 回答日時:
こちらも試してみてください。
メモリ不足というのは、Excel 2013以降の問題なんでしょうね。
何にか良くわからないけれども、こちらもメモリ喰いが発生しているようです。
横につなげるというのは、なにか問題があるのかもしれませんね。
'//
Sub ConvertNum2Col()
Dim x As Variant
Dim i As Long, j As Long, k As Long
'セッティング
Dim ar(1 To 5, 1 To 5)
Dim nTotal As Long: nTotal = 25
Dim sh1 As Worksheet, sh2 As Worksheet
Dim limitCol As Long
Dim col As Long
limitCol = Columns.Count
Set sh1 = Worksheets("Sheet1")
Set sh2 = Worksheets("Sheet2")
sh2.UsedRange.ClearContents
With sh1
x = .Range("A1", .Cells(Rows.Count, 1).End(xlUp)).Value
End With
k = 1
Application.ScreenUpdating = False
Do
For i = 1 To 5
For j = 1 To 5
DoEvents
ar(j, i) = x(k, 1)
col = (Int(k / nTotal) - 1) * 5
If limitCol <= (col + 5) Then
sh2.Cells(1, (Int(k / nTotal) - 1) * 5 + 1).Resize(5, limitCol - col).Value = ar
Exit Sub
End If
If k Mod nTotal = 0 Then
sh2.Cells(1, (Int(k / nTotal) - 1) * 5 + 1).Resize(5, 5).Value = ar
Erase ar()
End If
k = k + 1
Next j
Next i
Loop Until k > UBound(x)
Application.ScreenUpdating = True
End Sub
No.3
- 回答日時:
続けてお邪魔します。
>この処理をしたいデータだとメモリが不足していますとなり
Sheet1のA列データは何行目まであるのでしょうか?
Excelの最終列はXFD列の16384列なので、その5倍の81920行までのデータ数であれば
少し時間を要しても前回のコードで大丈夫だと思います。
少し時間短縮をしたい場合は
最初に
>Application.ScreenUpdating = False
と
最後に
>Application.ScreenUpdating = True
を追加すればほとんど時間は要しないとおもいます。
※ もし、Sheet1のデータ数が81921行以上ある場合は
Sheet2を2段で表示する必要があると思います。
※ 実際、そんなにデータが多いとSheet2の画面をスクロールするのも大変でしょうけど・・・m(_ _)m
No.2
- 回答日時:
No.1です。
投稿後気づきました。
VBAでの方法をご希望だったのですね。
No.1で回答したように元データはSheet1のA1セル以降にあり、Sheet2のA列以降5行ずつ表示するとします。
Sub Sample1()
Dim i As Long, cnt As Long
Dim wS As Worksheet
Set wS = Worksheets("Sheet2")
wS.Cells.ClearContents
With Worksheets("Sheet1")
For i = 1 To .Cells(Rows.Count, "A").End(xlUp).Row Step 5
cnt = cnt + 1
wS.Cells(1, cnt).Resize(5).Value = .Cells(i, "A").Resize(5).Value
Next i
End With
End Sub
こんな感じでもいけると思います。m(_ _)m
ありがとうございます。
早速やってみました。
少ないデータだとうまく動きました。
私がこの処理をしたいデータだとメモリが不足していますとなり
エラーが出てしまいました。ちょっと頑張ってみます。
助かりました。
No.1
- 回答日時:
こんばんは!
色々やり方はあると思いますが、一例です。
元データはSheet1のA1セルからあり、Sheet2のA1セル以降に表示するとします。
Sheet2のA1セルに
=IF(COUNTA(Sheet1!$A:$A)<ROW(A1)+(COLUMN(A1)-1)*5,"",OFFSET(Sheet1!$A$1,(COLUMN(A1)-1)*5+ROW(A1)-1,,1))
という数式を入れ下へ5行分、そのまま右へフィル&コピー!
こんな感じではどうでしょうか?
※ Sheet1のA列には途中に空白セルはない!という前提です。m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルでのマクロを使ったデータの並べ替え 3 2022/12/03 18:54
- Visual Basic(VBA) 【VBA】もし、値が0だったら左のセルと合わせて削除したい 3 2023/04/20 10:12
- Excel(エクセル) 関数EXACT(文字列,文字列)とexcelVBA 3 2022/04/14 15:07
- Excel(エクセル) 結合セルのソートについて 5 2022/04/22 11:57
- その他(Microsoft Office) エクセルソートと抽出について 3 2022/10/22 22:09
- Excel(エクセル) Googleスプレッドシートの割合の関数と円グラフの並べ替えについて 1 2022/07/22 17:31
- Visual Basic(VBA) Excelで横書き50行の漢字テストデータを縦書きのテスト問題にしたい。 6 2022/04/27 15:03
- その他(プログラミング・Web制作) プログラミング python pandas 固定長データの出力 2 2022/08/16 11:22
- Excel(エクセル) VBAで重複データを合算したい(時間) 1 2022/12/08 23:06
- Excel(エクセル) Excelの計算式で質問です。 3 2022/06/21 21:58
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が解説!あなたの声を行政に届ける「パブリックコメント」制度のすべて
社会に対する意見や不満、疑問。それを発信する場所は、SNSやブログ、そしてニュースサイトのコメント欄など多岐にわたる。教えて!gooでも「ヤフコメ民について」というタイトルのトピックがあり、この投稿の通り、...
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELのVBAで複数のシートを追...
-
オートフィルターの絞込みをし...
-
勤怠表について ABS、TEXT関数...
-
【マクロ】【画像あり】関数が...
-
空白のはずがSUBTOTAL関数でカ...
-
Excelで4択問題を作成したい
-
エクセルについて
-
エクセルシートの見出しの文字...
-
【Officer360?Officer365?の...
-
エクセルの複雑なシフト表から...
-
Excelに貼ったXのURLのリンク...
-
グループごとの人数のカウント
-
グループごとの個数をカウント...
-
ページが変なふうに切れる
-
エクセル
-
エクセル ドロップダウンリスト...
-
グループごとの人数のカウント
-
エクセル GROUPBY関数について...
-
特定のセルだけ結果がおかしい...
-
VBA チェックボックスをオーバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報