엑셀 잘하시는 분^^

 자료 정리를 해야될 일이 생겼습니다.

 

하나하나 노가다를 하려니 기가 막힐 지경입니다. 마음은 급하고...

 

 혹시 세상에 이런 계산도 엑셀로 가능할까 싶습니다.

 

 업종 특성상.. 취급하는 상품이 워낙 많아서 그러니.. 하나하나 확인하세요 라고는 해주지 말아주세요 :;

 

 문제는 이것입니다.

 

 상품은 부지기수로 있구요 :;

 

 용기 크기가 있습니다.  가로 / 세로 / 높이가 있습니다.

 

 상품은 각각 크기도 다르거니와 중요한 것은 숫자도 다릅니다.

 

하고 싶은 일은 각 상품 (다른 수량을 가지고 있는)을 최적의 용기와 매칭을 시키고 싶습니다.

 

이를 위해 풀어야할 문제들이 있습니다. :; 

 

첫째, 일단 각각의 용기에 담을 수 있는  상품의 갯수를 알아야 합니다.

 

그런데, 이게 단순히 체적만으로 안되더군요 :;  상품을 꺽거나 구부릴 수 없기 때문에:; 어쩔 수 없는 사공간이 생기구.. 이를 반영해서 계산해줘야 합니다.

 

예를 들어 상품의 크기가 80 / 30 / 80이고 용기의 크기가 100/100/300이다.

 

단순 체적으로 계산하면 20개 이상이 들어가야 합니다만, 실질적으로 배치를 해보면, 10개가 한계입니다 :;

 

여기서 최적의 갯수를구하는 문제가 난제 1번..

 

그다음은 이게 안된다고 한다면.. 다음 용기로 넘어가고... 다음 용기로 넘어가고.. 최적의 용기를 구하는 문제가 생깁니다..  미 문제가 난제 2번 :;

 

혹시 이런 계산 엑셀로 돌려 보신적 있으신 분 있나요?

 

있는 프로그램은 달랑 엑셀 하나...

 

아 이걸 노가다로 다시 하려고 하니 갑갑해요 ㅠㅠ 시간은 없는데 ㅠㅠ

 

단순 체적으로만 가지고 구했더니.. 이거 다 꼬여버렸어요 ㅠㅠ

 

 

 

 

 

 

 

 

 

    • 저기...이건 엑셀이 문제가 아니라 그냥 수식과 수학의 문제 아닐까요. 수식을 짜놓으면 그걸 엑셀이 계산은 해줄 수 있습니다만,
      그 수식을 잘 짜는게 어려울 것 같은데요.
    • 상품의 크기를 x/y/z(가로/세로/높이) 라고 하고 용기의 크기를 X/Y/Z(가로/세로/높이)라고 할 때, Z/z 값을 구하고 소수점 이하는 버림 (예. 20/3 = 6)
      X/x, Y/y의 값, 단 이 때 소수점 이하는 버림 한 뒤 X/x 와 Y/y 값 중에 작은 값을 취하도록 합니다.
      이 때, X/x 와 Y/y 값 중에 취한 값과 Z/z 값을 곱하면 들어가는 개수가 되지 않을까요?

      단....x/y/z를 바꾸어서, 즉 물건을 적재하는 면을 서로 달리해버리면 또 경우의 수가 많아지겠지요.
    • Rcmdr 님 말씀대로 엑셀을 잘하고 못하고의 문제가 아니라 수식을 어떻게 짜느냐에 대한 문제군요.

      용기와 상품 둘 다 직육면체라면 로직은 어렵지 않을 듯한데... 직육면체인가요?
    • 상품의 가로 / 세로 / 높이와 용기의 가로 / 세로 / 높이의 값이 주어지면.. 알아서 MAX 값을 구할 수 있는 함수 같은 것은 없나요? 이게 참 단순 곱하기 더하기 수식으로는 도저히 각이 안나오네요 :;
    • 직육면체라고 가정하고 계산하고 있습니다^^
    • 예 RDMDR님 말씀대로 경우의 수가 많아지는 문제가 있습니다 :; 이게 단순 어느 한용기랑 상품만 비교하는게 아니라, 최적의 용기를 찾는 문제라..
    • 잉명12/ 경우의 수는 많아지는게 아니라 6개밖에 없지 않나요? 한 용기에 한 가지 제품씩 매칭된다면요.
      경우의 수는 3!이고,
      나열해서 쓰면
      X/x, Y/y, Z/z
      X/x, Y/z, Z/y
      X/y, Y/x, Z/z
      X/y, Y/z, Z/y
      X/z, Y/x, Z/y
      X/z, Y/y, Z/x

      이렇게 6가지 경우에 각각 최소값을 구하고, 최소값 3개 곱하게 만들어서 6개의 값을 얻고,
      그 6개의 값 중 최대값을 찾으면 되고, 최대값은 MAX 함수로 찾으면 되겠네요.
    • =max(rounddown(X/x,0)*rounddown(Y/y,0)*rounddown(Z/z,0), case2 , case3 , case4 , case5 , case6)
      이 함수가 각 용기별로 loop 돌 수 있게 macro를 짜면 됩니다.

게시판 2012

번호 제목 글쓴이 조회 날짜
[공지] 게시판 규칙, FAQ, 기타등등 462,407 01-31
[공지] 게시판 관리 원칙. 147,940 12-31
제 트위터 부계입니다. 3 122,151 04-01
130354 새해복 많이 받으세요 10 187 12-31
130353 아바타 3를 보고 유스포 2 192 12-31
130352 [핵바낭] 올해 잉여질 결산 잡담 14 334 12-31
130351 아바타: 불 과 재 보고 왔어요 짤막 소감 6 229 12-31
130350 [영화강추] '척의 일생' 8 249 12-31
130349 흑백요리사 2 8~10회, 싱어게인 4 탑 4 결정 6 285 12-31
130348 Lacombe Lucien(1974) 7 131 12-31
130347 [관리] 25년도 보고 및 신고 관련 정보. 15 324 12-31
130346 Isiah Whitlock Jr. 1954 - 2025 R.I.P. 2 138 12-31
130345 [왓챠바낭] 우편배달부 말고 '포스트맨은 벨을 두번 울린다' 잡담입니다 12 267 12-31
130344 [넷플] 말 많고 탈 많은 '대홍수' 드디어 봤습니다 14 453 12-30
130343 [반말주의] 다들 올해 고생 많았어!! 새해 모두 건강하고 복 터지길 바래!! 12 186 12-30