2017-04-26 1 views
0

콤보 상자의 모든 값을 시트로 통과시키고 별도의 시트에 저장 될 단일 셀을 검색하는 방법은 무엇입니까?VBA 매크로 범위를 전체 시트로 확장하는 방법

시트 1 : 입력 한 날짜부터 90 일 동안 외부 데이터베이스에서 시간별 온도를 검색하려면 콤보 상자 (시트 2에 저장 됨)의 위치와 날짜를 입력하십시오. 최대 값을 저장합니다. 시트 3 : 지금, 다음 위치 이름에 각 위치에 저장 최대 값을 통해

을 갈 필요는, 하나의 반복에 대한 나의 매크로는 다음과 같습니다

ActiveWindow.SmallScroll Down:=-6 
    Range("B1").Select 
    Selection.NumberFormat = "General" 
    Range("B1").Select 
    ActiveCell.FormulaR1C1 = "='Load Book'!R[2]C[-1]" 
    Range("B2").Select 
    Sheets("Max Amps").Select 
    ActiveSheet.Calculate 
    Sheets("Load Book").Select 
Range("B3").Select 
Selection.NumberFormat = "0" 
ActiveSheet.Calculate 

이 아니라 하나의 무엇이든을 위해 노력하고 있습니다 세포. 그리고 다음 반복을 위해 매크로를 기록하려고 시도하면 첫 번째 최대 온도가 두 번째 위치에도 그대로 바뀝니다. 어떻게 최대 온도 저장소를 얻을 수 있습니까? 다음에 영향을받지 않고 다음 위치로 이동할 수 있습니까? 그리고 이것을 400 개 위치에 어떻게 적용 할 수 있습니까?

+4

시작 : http://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba-macros. –

+4

질문 제목을 실제로 발생한 문제가 반영된 것으로 수정하십시오. – Jeeped

+0

@BrandonBarney 이걸보세요 :'ActiveWindow.SmallScroll Down : = - 6'은 그냥 녹음입니다. 멀리 가지마. OP가 단계별로 배우게하십시오. – Masoud

답변

0

먼저 변화 여기에 코드

 ActiveWindow.SmallScroll Down:=-6 
    Range("B1").NumberFormat = "General" 
    Range("B1").FormulaR1C1 = "='Load Book'!R[2]C[-1]" 
    Sheets("Max Amps").Select 
    ActiveSheet.Calculate 
    Sheets("Load Book").Select 
Range("B3").NumberFormat = "0" 
ActiveSheet.Calculate 
+0

이것은 OP가 요청한 것에 대한 대답이 아닙니다. 불필요한 선택 (스크롤 부분조차도 제외)을 제거하는 것 외에는 아무 것도하지 않았습니다. 시트를 선택하지 않으려면 시트를 '희미하게'하지 않았습니다. 나는 이것을 나쁜 대답이라고 생각하지 않을 것이다. – Masoud

+0

감사합니다. – samred