임의의 DVD를 선택하기 위한 스프레드시트 포럼 질문

임의의 DVD를 선택하기 위한 스프레드시트 포럼 질문

내 Windows 7 노트북의 OpenOffice 스프레드시트(버전 3.3.0)에 내 (279) DVD 목록이 있고 시청할 영화를 무작위로 선택하는 공식을 만들고 싶습니다. 정신). 이것은 작동합니다:

=RANDBETWEEN(1;279)

하지만 그것이 제공하는 것은 확인하기 위해 위아래로 스크롤해야 하는 숫자뿐이며 여기에는 '하드 코딩된' DVD의 총 개수도 포함되어 있습니다. 예를 들어 번호가 277이면 영화 이름(이 경우 'X-Men 2')이 표시되도록 영화 이름(A열에 있음)을 표시하고 싶습니다. 나는 다음과 같이 앞에 열 문자를 추가한다고 가정했습니다.

=A(RANDBETWEEN(1;279))

작동하지만 오류가 발생합니다: #NAME?

그럼 어떻게 해야 할까요...

  1. 영화 이름을 표시하도록 설정
  2. 새 DVD를 추가할 때 자동으로 상위 숫자를 감지하므로 이를 공식에 하드 코딩할 필요가 없습니다.
  3. 셀을 클릭하기만 하면 새로운 난수를 다시 생성할 수 있도록 하려면 어떻게 해야 합니까? (즉, Shift+Ctrl+F9를 눌러 수동으로 다시 계산할 필요가 없습니다)

감사해요.

답변1

  1. A 열의 값을 반환하려면 행아르 자형, 당신이 사용할 수있는=INDIRECT("A"&아르 자형)

  2. A 열의 값 수를 계산하려면 다음을 사용할 수 있습니다.=COUNTA(A1:A65536)

    따라서 귀하의 경우에는 다음을 사용할 수 있습니다.=INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536)))

  3. 자동으로 다시 계산되는 매크로 버튼을 만들 수도 있습니다. OpenOffice.org Calc의 매크로 언어에 대해 더 많은 도움을 드릴 만큼 지식이 부족합니다.

답변2

저는 귀하의 세 번째 요청을 처리할 수 있을 만큼 OpenOffice의 내부 구조에 대해 충분히 잘 알지 못합니다. 다만 일반 F9가 저에게 적합하고 교대나 제어가 필요하지 않다고 말하는 것 외에는 말이죠. 하지만 나머지 두 개는 다음과 같습니다.

=INDIRECT(ADDRESS(RANDBETWEEN(1,MATCH("*",$A$1:$A$50000,-1)),1))

5000050000개 이상의 DVD를 가지고 있거나 가질 것으로 생각되는 경우 를 더 큰 것으로 바꾸고 , 이외의 열에 있는 경우 함수 1의 을 바꾸십시오 .ADDRESS()A

답변3

  • Bavi_H의 답을 셀 B1( =INDIRECT("A"&RANDBETWEEN(1;COUNTA(A1:A65536)))) 에 입력하세요.
  • 너비와 높이를 B1멋지고 크게 만드세요.
  • B1긴 영화 제목이 잘 맞도록 선택한 큰 크기의 매력적인 글꼴 형식
  • 열의 셀을 선택 A하고 메뉴 항목을 선택하십시오.Format > Column > Hide
  • Tools > Macros > Record Macros메뉴 항목을 선택하세요
  • F9(또는 Ctrl-Shift-F9)를 누르세요.
  • Stop Recording버튼 을 클릭하세요
  • 나타나는 필드 Basic Macros Dialog에 "새로 고침"과 같은 이름을 입력하고 상자 Macro name에서 스프레드시트를 선택한 다음 Save macro in클릭 Save하고 "영화"와 같은 모듈 이름을 입력하고OK
  • 메뉴 항목을 선택하세요View > Toolbars > Form Controls
  • Design Mode해당 도구 모음에서 버튼이 켜져 있는지 확인하세요.
  • Form Design양식 디자인 도구 모음을 표시하려면 버튼 을 누르세요.
  • 도구 모음 내에서 버튼을 Form Design끕니다.Open in Design Mode
  • 툴바 에서 버튼 Form Controls을 클릭하세요.Label Field
  • 셀 B1의 왼쪽 상단에서 오른쪽 하단으로 커서를 끌어 셀과 동일한 크기의 레이블 필드를 만듭니다.
  • 셀/레이블을 마우스 오른쪽 버튼으로 클릭하고 Control...상황에 맞는 메뉴에서 항목을 선택합니다.
  • 탭 을 선택한 다음 필드 General에서 텍스트를 삭제하세요.Label
  • 탭 을 선택하고 버튼 Events을 클릭하세요....
  • 대화 상자 에서 버튼 Assign Action을 클릭하십시오.Macro...
  • 대화 상자 에서 이전에 사용한 모듈 이름(예: "movies")이 보일 때까지 상자 Macro Selector의 스프레드시트 아래 항목을 확장하고 클릭합니다.Library
  • 상자 에서 Macro name이전에 생성한 매크로(예: "새로 고침")를 선택합니다.
  • 을 클릭하고 OK오른쪽 상단에 있는 버튼을 클릭하여 상자를 OK닫습니다.PropertiesX
  • 도구 모음 에서 Form Controls끄기Design Mode
  • 이제 셀을 클릭하면 B1거기에 표시된 영화 이름이 변경되어야 합니다.
  • 원하는 경우 도구 모음을 닫으세요.
  • 스프레드시트를 저장하기 전에 , 및 매우 깔끔한 모양을 위해 Tools > Options > OpenOffice.org Calc > View이동하여 끌 수 있습니다 . 다음에 새 빈 스프레드시트를 만들 때 이러한 기능을 다시 켜야 할 수도 있습니다.Window: Column Headers and RowsHorizontal Scroll BarsVertical Scroll BarsSheet tabs
  • 스프레드시트 저장
  • ???
  • 이익

영화 선택자

답변4

쉽게 하려면 A 열에 DVD에 번호를 매기고 B 열에 DVD 이름을 입력하세요. ( A2 = A1 + 1더 쉽게 만들고 싶다면 공식을 사용하여 번호를 매길 수 있습니다.)

열 레이블이 있는 경우 n = DVD가 시작되는 위의 행 수라고 가정합니다.

=INDEX(B:B, RANDBETWEEN(1, MAX(A:A)) + n, 1) 

관련 정보