2012-07-27 2 views
2

행 2가 숨겨져있는 워크 시트가 있습니다. 이 행에 매크로가 붙여 넣어집니다. 이 매크로를 실행할 때마다 숨겨진 행이 다시 나타납니다.매크로를 실행 한 후에 숨겨진 행이 "숨김 해제"

행이 다시 나타나지 않도록하는 방법이 있습니까?

이 내 코드 인 여전히

이 하위 Update2029은()

Dim LSearchRow As Integer 
Dim LCopyToRow As Integer 
Dim LSearchValue As String 

On Error GoTo Err_Execute 
Application.ScreenUpdating = False 

LSearchValue = InputBox("Please enter a serial number to search for.", "Enter value") 

'Start search in row 5 
LSearchRow = 5 

'Start copying data to row 2 in "Master" (row counter variable) 
LCopyToRow = 2 

While Len(Range("A" & CStr(LSearchRow)).Value) > 0 

    'If value in column A = LSearchValue, copy entire row to "Master" 
    If Range("A" & CStr(LSearchRow)).Value = LSearchValue Then 

     'Select row in "Master" to copy 
     Rows(CStr(LSearchRow) & ":" & CStr(LSearchRow)).Select 
     Selection.Copy 

     'Paste row into "Master" in row 2 
     Sheets("Master").Select 
     Rows(CStr(LCopyToRow) & ":" & CStr(LCopyToRow)).Select 
     ActiveSheet.PasteSpecial 


    End If 

    LSearchRow = LSearchRow + 1 

Wend 

'Position on cell A3 
Application.CutCopyMode = False 
Range("A3").Select 

MsgBox "All matching data has been copied to 2029." 

Exit Sub 

이 Err_Execute 2 행 숨기기 해제된다. "오류가 발생했습니다" 있는 MsgBox에게 . 시트 ("마스터") 행 ("2 : 2"). EntireRowHidden = 진정한 ApplicationScreenUpdating = 숨기려는 행이 다음 줄의 "시트 1"이라는 시트에 가정

End Sub 

답변

2

진정한 코드는 행을 숨길 것입니다 :

Sheets("Sheet1").Rows("2:2").EntireRow.Hidden = True 
+0

도움을 주셔서 감사합니다. 월요일에 다시 일할 때 시도해보십시오. – user1551203

1

코드를 보지 않고 Row2 표시를 만드는 것을 알 수 없습니다. 그러나 실제로 원인을 해결하지 않고 표시하지 않으려면 다음을 수행하십시오.

매크로 시작 부분에 Application.ScreenUpdating = false을 삽입하십시오. 이 워크 시트의 실제 이름을 [시트 이름] 대체 매크로 삽입의 끝에 다음

:

Sheets("[SheetName]").Rows("2:2").EntireRow.Hidden = True 
Application.ScreenUpdating = true 
가 화면을 업데이트하기 전에 행이 다시 숨길하고있을거야

이 방법 마치 결코 일어난 적이없는 것처럼.

3

해당 행에 붙여 넣는 방법에 따라 다릅니다.

당신이 할 경우,이

Sheet1.Rows(2).Copy Sheet2.Rows(5) 
행 5가 붙여 넣기 한 후 숨기기를 취소합니다 다음 숨겨

. 행 5가 2 행의 특성을 상속하기 때문입니다.

붙여 넣기를 사용하면 그렇지 않습니다. 당신이 PasteAll (시나리오 1)을 수행 할 경우, 당신이 다른 다시 행을 숨기 코드의 2 조각으로 진행해야 할 것이다 예를

Sheet1.Rows(2).Copy 
Sheet2.Rows(5).PasteSpecial xlValues 

를 참조하십시오.

+0

+1 왜 이런 일이 일어나고 그것을 막을 수 있는지 설명하는 유일한 게시물입니다. –

+0

감사합니다.이 답변이 가장 좋습니다. 붙여 넣기 특수 코드를 사용합니다. – user1551203

관련 문제