VBA에 새로운 기능입니다. 난 상수 텍스트를 일부 상수 세포를 채우는 함수를 작성하려고합니다. 내 부에서이 함수를 호출하고있어텍스트를 채우는 기능이 종료되면 VBA 텍스트가 사라집니다.
Public Function PrepareSpreadSheet()
Range("B5").Select
ActiveCell.FormulaR1C1 = "Sun"
Range("C5").Select
ActiveCell.FormulaR1C1 = "Mon"
Range("D5").Select
ActiveCell.FormulaR1C1 = "Tue"
Range("J5").Select
ActiveCell.FormulaR1C1 = "Total"
Range("B5:J5").Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Function
: 나는 실행하면
Sub ReadTxtFile()
PrepareSpreadSheet
End Sub
이 아무 일도 발생하지 이건 내 코드입니다. 디버깅 할 때 텍스트가 지정된 셀에 입력 된 것을 볼 수 있지만 함수가 끝나면 사라집니다.
해결 방법을 설명해 주시겠습니까?
감사합니다, 리
이 기능은 예상대로 작동합니다. 개선 될 수 있지만 (Sid의 답변 참조), 어떤 일이 일어나고 있다고 생각되는 것은 어떤 시점에서'Application.ScreenUpdating = false'를 해제하고 함수가 실행될 때 화면이 업데이트되지 않았다는 것입니다. 코드를 검사하고'Application.ScreenUpdating = False'를 찾거나 단순히'ReadTxtFile' 서브 안에'PrepareSpreadSheet' 호출 후에'Application.ScreenUpdating = True'를 추가하십시오 –
은'Exit Sub' 오타입니다? 'End Sub'가되어서는 안 될까요? –
@mehow : 좋은 지적 –