의 셀 범위에서 z- 점수를 계산하므로 큰 스프레드 시트를 정상적인 Excel 기능과 함께 사용할 수는 있지만 속도를 높이고 vba를 사용하여 파일 크기를 작게 만들고 붙여 넣기를 원합니다. 정적 값은 성능이 저하되는 참조 된 값과 반대되는 것입니다 (통합 문서는 현재 약 20MB이며 계속 증가 할 것입니다)Excel 2007 - VBA
그래서 나는 무엇을하고 싶은지 알기 쉽게 간결하게 설명하려고합니다. 나의 VBA 경험으로서의 표현은 아직 초기 단계이기 때문에 어떤 도움을 주시면 감사하겠습니다.
Z 점수 = (수 - 모든 수의 평균)/(모든 수치의 표준 편차)
워크 ("중계") 값이 ("C32")가 모든 숫자 워크의 평균 ("포함한다. 릴레이 "). 값 ("c33 ")은 모든 숫자의 stdev를 포함합니다.
열 워크 시트 ("Hitterscalc ")에서 range ("cb : cb ")에 z를 계산합니다. ("Hitterscalc"). 해당 열의 모든 행에 대해 해당 워크 시트 ("Hitterscalc")에서 해당 값이 발견되고 해당 A 열 셀이 ""과 같지 않으며 해당 AB 열이 1과 같습니다.
누구나 이것에 대한 간결한 진술에 대한 아이디어가 있습니까? 나는 세포에 의해 대략적으로 셀을 완성 할 수 있지만 모든 컬럼을 돌파하기 위해 루프에 넣기 시작할 때 모든 코드가 제 코드로 떨어져 버려서 불행하게도 내 머리 속에 있습니다.
당신의 시간Application.ScreenUpdating = False
Worksheets("hitterscalc").Range("cb2").FormulaR1C1 = _
"=IF(OR(RC[-79]="""",RC[-52]<>1,Settings!R4C[-74]<>""yes""),"""",(RC[-70]-relay!R32C[-77])/relay!R33C[-77])"
Sheets("HittersCalc").Select
Range("CB2").Select
Selection.AutoFill Destination:=Range("CB2:CB701") Range("CB2:CB701").Select Columns("CB:CB").Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False
수식으로 모두하십시오. 일단 당신이 그것을 가지고 다음 첫 번째 행에 대한 매크로 레코더를 사용하여 수식으로 다시 그것을 누른 다음 자동 완성하고 마지막으로 값을 복사하고 붙여 넣습니다. 매크로 레코더를 끄고 코드를 살펴보십시오. 그것은 당신에게 훌륭한 출발점을 줄 것입니다. Range (..). End (xlDown)을 사용하여 자동 완성을해야하는 거리를 알아내는 방법을 알고 싶다면 – Dan
에 이것을 더 자세히 정리할 방법이 있습니까? Application.ScreenUpdating = False 워크 시트 ("hitterscalc") 범위 ("cb2") FormulaR1C1 = _ "= IF (OR (RC [-79] =" "" ", RC [-52] <> 1, 설정! R4C [-74] <> "예" ")," "", (RC [-70] -relay! R32C [-77])/릴레이! R33C [-77]) " 시트 범위 : "CB2 : CB701" 선택 범위 : "CB : CB" 범위 ("CB2 : CB701") 선택 범위범위 (CB2 : CB701)) 선택. 선택. 복사 선택.PasteSpecial 붙여 넣기 : = xlPasteValues, 작업 : = xlNone, SkipBlanks _ : = False, Transpose : = False Application.CutCopyMode = False – kamelkid2
코드를 코드에 추가하여 주석에 모두 넣는 것보다 읽기가 어렵습니다. 그렇지 않으면. 이번에는 이미 편집 해 놨어. – Dan