
세 가지 범위가 있는데 Excel을 사용하여 모든 조합을 오름차순으로 채우고 싶습니다. 범위는 다음과 같습니다:
- 위력: 2~30(1씩 증가)
- ON 시간: 100~10000(100씩 증가)
- OFF 시간: 100~10000(100씩 증가)
이렇게 하면 29 × 100 × 100 = 3개의 열이 있는 290,000개의 행이 제공됩니다.
출력은 다음과 같아야 합니다.
--------------------------------------------
| Power (W) | On Time (ms) | Off Time (ms) |
--------------------------------------------
| 2 | 100 | 100 |
--------------------------------------------
| 2 | 100 | 200 |
--------------------------------------------
| 2 | 100 | 300 |
--------------------------------------------
| 2 | 100 | 400 |
--------------------------------------------
etc..
어떻게 이를 달성할 수 있나요?
답변1
첫 번째 행을 다음과 같이 설정할 수 있습니다.
A1
:=INT((ROW()-2)/10000)+2
B1
:=(MOD(INT((ROW()-2)/100),100)+1)*100
C1
:=(MOD((ROW()-2),100)+1)*100
원하는 행 수를 끌어서 채우세요. 실제 제목 행이 있는 경우 모든 항목을 로 변경 ROW()-1
합니다 ROW()-2
.
답변2
다음은 VBA 솔루션입니다. Office 2013에서 테스트 및 작업 중
Sub FillCombinations()
For intPower = 2 To 30
For intOn = 100 To 10000 Step 100
For intOff = 100 To 10000 Step 100
intRow = intRow + 1
Cells(intRow, 1) = intPower
Cells(intRow, 2) = intOn
Cells(intRow, 3) = intOff
Next intOff
Next intOn
Next intPower
End Sub
VBA 사용법을 모르는 경우:
- 엑셀을 열고 다음을 누르세요.ALT+F11VBA 편집기를 열려면
- 위의 매크로를 붙여넣고 실행해 보세요.F5
활성 시트의 A, B, C 열에 가능한 모든 조합이 채워집니다.
그런데. 행 1부터 시작하여 290,000행입니다. :)