はじめまして。
さっそくですが質問させていただきます。
VB(記述はVBA)からExcel(非表示)のシートに、
行を挿入する処理についてです。
以下のような単純な処理ですが、
「Debug.Print」では通常18秒程度と表示されます。
しかし(1)の所をFalse→Trueにすると、1秒もかかりません。
質問:
1.非表示で行の挿入を高速にする方法はありますか?
2.なぜ表示時の方が速いんですか?
どちらかわかる方だけでも良いのでお願いします。
OS :windows2000
Language :VB6.0(SP6)
Excel.Ver :2000
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
800字制限で全部入りきらなかったんです。
すみません。
Private Declare Function timeGetTime Lib "winmm.dll" () As Long
Private m_lngTimeStart As Long'開始時間
Private Sub InsertCol()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim i As Integer'カウンタ
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open("ファイル名")
Set xlSheet = xlBook.Worksheets("シート名")
With xlApp
'計算停止
.ScreenUpdating = False
'メッセージ停止
.DisplayAlerts = False
'イベント停止
.EnableEvents = False
'非表示
.Visible = False・・・・(1)
End With
m_lngTimeStart = timeGetTime
With xlSheet
For i = 15 To 50
.Range("A" & i & ":BZ" & i).Insert Shift:=xlDown
Next
End With
Debug.Print (CDbl(timeGetTime) - CDbl(m_lngTimeStart)) / 1000
xlBook.SaveAs "ファイル名"
xlApp.Quit
Set xlSheet = Nothing
Set xlBook = Nothing
Set xlApp = Nothing
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルVBA マクロ処理中のポップアップメッセージについて 1 2023/08/04 21:34
- Excel(エクセル) Excelでnullになるような式のセルをマクロで空白行と認識させるにはどうすればいいですか? 3 2023/03/13 13:42
- PowerPoint(パワーポイント) エクセルのマクロについて教えてください。 1 2022/03/25 17:03
- Excel(エクセル) 非表示にしたい行をグループ化して折り畳み 4 2022/09/17 20:17
- その他(IT・Webサービス) 高速処理可能な表計算ソフトについて ExcelやGoogleスプレッドシートのような表計算ソフトで、 2 2023/04/29 16:06
- Excel(エクセル) EXCELのグラフを画像(JPG形式)で保存、通常実行がうまく行かない。ステップインはうまく行く 3 2022/08/30 12:06
- Excel(エクセル) Excelマクロの表示のExcel内をfindで検索 3 2022/06/15 20:07
- Excel(エクセル) [スライサー]に関して、 1 2022/05/24 21:07
- Visual Basic(VBA) EXCEL VBAで教えてください。 1 2022/12/22 04:20
- Visual Basic(VBA) エクセルのマクロで対象ごとにシート分けしてその内容をセルに書き込みたい 9 2022/08/24 13:23
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
insertを高速化させたい
その他(データベース)
-
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
EXCEL VBA マクロ 実行する度に処理速度がどんどん遅くなる原因が知りたい
Excel(エクセル)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
エクセルでの列、行の挿入、削除に時間がかかるようになったが・・。
Excel(エクセル)
-
6
エクセルVBA 4行飛ばしで転記するループ処理
Excel(エクセル)
-
7
vba フィルター 複数条件 3つ以上 完全一致除外
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
スタティックテキストが表示さ...
-
VBA、UserFormを前面に出力して...
-
ACCESS側からEXCELの書式を設定...
-
【C#】 あるイベントから別イ...
-
VBSで応答不要のメッセージボッ...
-
InvalidateRectがうまくいかない
-
マウスのクリックを無視したい
-
メッセージボックスのボタン名変更
-
VBA kernel32 の意味
-
起動後直に実行するコードはど...
-
Excel VBA 自動的に閉じるMsgBox
-
WEB上にボタンが押せない
-
DirectX環境下での方向キー同時...
-
VB.NET開発(イベントプロシー...
-
スケジューリング方式
-
VBSの処理中一旦処理を止めて再...
-
MFCのView終了時の終了確認
-
VCでウエイトをミリ秒でかけ...
-
VBA メッセージボックスを自動...
-
Application.ScreenUpdating=Fa...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
メッセージボックスのボタン名変更
-
VBSの処理中一旦処理を止めて再...
-
VBSで応答不要のメッセージボッ...
-
ACCESS側からEXCELの書式を設定...
-
VBA メッセージボックスを自動...
-
Application.ScreenUpdating=Fa...
-
VBA kernel32 の意味
-
エクセルVBAでクリップボード内...
-
Excelのワークシートに行を挿入...
-
Excel VBA で処理中断(DoEvents...
-
【C#】 あるイベントから別イ...
-
手動かプログラムでの起動かの判断
-
ASP.NETでのメッセージ画面を出...
-
Excel VBA 自動的に閉じるMsgBox
-
シャットダウン時のExcel強制終...
-
VBA、UserFormを前面に出力して...
-
<input type="file">タグで「キ...
-
Excel VBA 実行中に一瞬フリー...
-
「キャンセル」ボタン付きの処...
-
EXCEL VBA「Application.Displa...
おすすめ情報