Excel을 사용하여 세 가지 범위의 모든 조합을 오름차순으로 채웁니다.

Excel을 사용하여 세 가지 범위의 모든 조합을 오름차순으로 채웁니다.

세 가지 범위가 있는데 Excel을 사용하여 모든 조합을 오름차순으로 채우고 싶습니다. 범위는 다음과 같습니다:

  1. 위력: 2~30(1씩 증가)
  2. ON 시간: 100~10000(100씩 증가)
  3. 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 사용법을 모르는 경우:

  1. 엑셀을 열고 다음을 누르세요.ALT+F11VBA 편집기를 열려면
  2. 위의 매크로를 붙여넣고 실행해 보세요.F5

활성 시트의 A, B, C 열에 가능한 모든 조합이 채워집니다.
그런데. 행 1부터 시작하여 290,000행입니다. :)

관련 정보