Excel: 주어진 총계에 추가되는 숫자의 하위 집합을 찾으십니까?

Excel: 주어진 총계에 추가되는 숫자의 하위 집합을 찾으십니까?

숫자 열(A1:A100이라고 가정)이 있고 합계가 특정 합계가 되는 하위 집합을 찾아야 합니다.

답변1

Solver 추가 기능*을 사용하면 가능합니다. 다음 단계는 Excel 2007 및 2010에서 효과적이었습니다.

  1. 결과를 저장할 셀을 지정합니다(이 예에서는 C1). 이는 대상 셀이고 Excel에서 스크래치 작업에 사용할 수 있는 열(이 예에서는 B1:B100)
  2. 대상 셀에 "=SUMPRODUCT(A1:A100,B1:B100)" 수식을 입력합니다(따옴표 없음). 그러면 A1*B1+A2*B2+...etc의 합계가 계산됩니다.
  3. 솔버 열기(데이터 탭, 분석 그룹)를 선택합니다.
  4. 대상 셀은 명확해야 합니다(이 예에서는 $C$1).
  5. '같음:'에 대해 '값:'을 선택하고 원하는 값을 입력합니다.
  6. '셀 변경'에 "$B$1:$B$100"을 입력합니다(따옴표는 사용하지 않으며 이 값을 직접 0으로 초기화해야 할 수도 있음).
  7. 변경할 수 있는 셀에 제약 조건을 추가합니다. 풀다운에서 'bin'(바이너리)을 선택합니다. 이는 이러한 셀의 값을 0(합계에서 해당 A 셀 제거) 또는 1(합계에 해당 A 셀 추가)로 제한합니다.
  8. '해결'을 클릭하고 기다리세요. 찾고 있는 하위 집합의 일부인 숫자는 B 열에 1이 있습니다.

예


솔버에 오랜 시간이 걸리는 경우 분명히 작동하지 않는 행을 제거하여 문제를 해결할 수 있습니다. (총액은 달러 단위이고 한 행에만 0이 아닌 센트가 있습니다.)


보너스: 해당 셀에 조건부 서식을 추가하여 Excel에서 찾고 있는 셀을 자동으로 강조 표시하도록 할 수 있습니다. 서식을 지정할 셀을 모두 선택하고 (홈 탭)>>(스타일 그룹)>>조건부 서식>>새 규칙에서 '수식을 사용하여 서식을 지정할 셀 결정'을 선택합니다. 수식에 '=$B1=1'(따옴표 없음)을 입력하면 B 열의 해당 행이 1인 경우 true로 평가됩니다. 형식의 경우 원하는 모든 항목(굵게, 기울임꼴, 녹색 채우기, 등).

중요한 행을 찾는 또 다른 쉬운 방법은 열 B Z-> A를 정렬하는 것입니다. 그러면 모든 1이 맨 위에 표시됩니다.


*솔버 애드인은 다음 단계에 따라 설치할 수 있습니다.

  1. Microsoft Office 단추를 클릭한 다음 Excel 옵션을 클릭합니다.
  2. 추가 기능을 클릭한 다음 관리 상자에서 Excel 추가 기능을 선택합니다.
  3. 이동을 클릭하세요.
  4. 사용 가능한 추가 기능 상자에서 해 찾기 추가 기능 확인란을 선택한 다음 확인을 클릭합니다. (사용 가능한 추가 기능 상자에 해 찾기 추가 기능이 나열되지 않은 경우 찾아보기를 클릭하여 추가 기능을 찾으십시오.)
  5. 현재 컴퓨터에 Solver 추가 기능이 설치되어 있지 않다는 메시지가 나타나면 예를 클릭하여 설치하세요.

답변2

저렴한 Excel 추가 기능이 있습니다.합계 일치, 목표 합계에 추가되는 숫자의 하위 집합을 강조 표시합니다.

여기에 이미지 설명을 입력하세요

관련 정보