| 
    
     |  | 複数行を一度に非表示にするマクロを作成しているのですが。 
 まず、C列を検索し、*のある行をワーク領域に格納しています。
 その後に、ワーク領域に格納したデータで行を一度で非表示にしたいのですが、
 エラーが発生します。
 エラー内容:実行時エラー'1004'
 アプリケーション定義またはオブジェクト定義のエラーです。
 
 どーも、ワーク領域に格納したデータ長が256を超えると
 エラーが発生しているので、
 現状、複数回に分けて、非表示にしています。
 どーすれば、一度で非表示にできますか?
 よろしくお願いします。
 '--------------------------------------------------------------------
 Private Sub cmd_非表示_Click()
 
 Dim I      As Long
 Dim Count    As Integer
 Dim ST, ED   As Date
 Dim WK_A, WK_C As String
 Dim WK_B()   As String
 
 ST = Now()
 Count = 0
 Application.ScreenUpdating = False
 For I = 1 To 65536 Step 1
 If Range("C" & I) = "" Or Range("C" & I) = vbNullString Then
 Else
 If Range("C" & I) = "end" Then
 Exit For
 End If
 If InStr(Range("C" & I), "*") <> 0 Then
 ReDim Preserve WK_B(Count)
 WK_B(Count) = I & ":" & I
 Count = Count + 1
 End If
 End If
 Next I
 WK_A = Join(WK_B, ",")
 Range(WK_A).Select '←ここで、エラーが発生する!
 Selection.EntireRow.Hidden = True
 Range("A1").Select
 Application.ScreenUpdating = True
 Set ActiveSheet.HPageBreaks(1).Location = Range("A110")
 ED = Now()
 'MsgBox "End" & vbCr & "Time=" & Format(ED - ST, "hh:mm:ss")
 
 End Sub
 
 |  |