# 3-1.실습: 설문지 만들기 - ChatGPT+Apps Script

- 일반적인 구글 설문 만들기 위치는 구글 우측 상단에서 Forms를 선택 

- 하지만, 모든 설문을 입력하고 설정해야 하는 노가다 작업

- AI와 구글 Apps Script를 활용하여 효율적으로 작업 가능

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/141121_Av9VCIgEi4SYYWZcqi?q=80&s=1280x180&t=outside&f=webp)

# 1. 설문 항목 만들기

- 실습 주제: 브랜드 X 인지도 조사

- 설문 항목을 만들어 달라고 ChatGPT에게 프롬프팅

    - 프롬프트 엔지니어링 공식에 따라서 더 상세하게 작성하면 좋음.
    - (일-맥락-예시-역할-폼-톤-Do&Don'ts)

```
ChatGPT:
새로운 브랜드 인지도 설문을 하려고 해.
브랜드 이름은 X. 설문 문항 10개만 제안해줘. 
```

🔹ChatGPT가 만들어준 브랜드 X 인지도 설문 문항 (예시 10개)

1. 브랜드 인지도

- 브랜드 X를 들어본 적이 있으신가요?

    - 예 / 아니오

2. 최초 인지 경로

- 브랜드 X를 처음 알게 된 경로는 무엇인가요?

    - TV/라디오 광고

    -  온라인 광고 (SNS, 유튜브 등)

    - 지인 추천

    - 매장 방문

    - 기타 (직접 입력)

3. 브랜드 연상 이미지

-  브랜드 X 하면 어떤 이미지를 가장 먼저 떠올리시나요?

    - 세련됨

    - 합리적 가격

    - 품질 우수

    - 친근함

    - 잘 모르겠다 

4. 브랜드 친숙도

- 브랜드 X에 대해 얼마나 친숙하다고 느끼시나요?

    - 전혀 모른다 (1) ~ 매우 잘 알고 있다 (5)

5. 제품/서비스 이용 경험

- 브랜드 X의 제품/서비스를 사용해본 적이 있습니까?

    - 예 / 아니오

6. 사용 빈도 (이용 경험자만 응답)

- 브랜드 X를 얼마나 자주 이용하시나요?

    - 주 1회 이상

    - 월 1~3회

    - 연 1~2회

    - 사용 경험 없음

7. 만족도 평가

- 브랜드 X 제품/서비스에 대한 전반적인 만족도를 평가해 주세요.

    - 매우 불만족 (1) ~ 매우 만족 (5)

8. 경쟁 브랜드 비교

- 브랜드 X는 경쟁 브랜드(예: A, B, C)에 비해 어떤 수준이라고 생각하시나요?

    - 매우 낮다 (1) ~ 매우 높다 (5)

9. 향후 구매 의사

- 앞으로 브랜드 X 제품/서비스를 구매할 의사가 있습니까?

    - 전혀 없다 (1) ~ 매우 있다 (5)

10. 개선 의견 (개방형 질문)

- 브랜드 X가 개선하면 좋을 점이나 바라는 점을 자유롭게 적어주세요.

# 2. 구글 시트에 질문과 답변을 데이터베이스 형태로 정리하기 

```
ChatGPT:
먼저 구글 시트에 질문과 답변보기를 데이터베이스 형태로 넣고, 구글 폼으로 만들고 싶어
먼저 구글 시트에 어떤 방식으로 입력하면 좋을까?
```

- ChatGPT가 아래 테이블 형태로 설문을 정리해 줌 

| Q_No | Question_Text | Type | Options | Required |
| --- | --- | --- | --- | --- |
| 1 | 브랜드 X를 들어본 적이 있으신가요? | multiple | 예;아니오 | TRUE |
| 2 | 브랜드 X를 처음 알게 된 경로는 무엇인가요? | multiple | TV/라디오 광고;온라인 광고(SNS, 유튜브 등);지인 추천;매장 방문;기타 | TRUE |
| 3 | 브랜드 X 하면 가장 먼저 떠오르는 이미지는? | multiple | 세련됨;합리적 가격;품질 우수;친근함;잘 모르겠다 | TRUE |
| 4 | 브랜드 X에 대해 얼마나 친숙하다고 느끼시나요? | scale | 1-5 | TRUE |
| 5 | 브랜드 X의 제품/서비스를 사용해본 적 있습니까? | multiple | 예;아니오 | TRUE |
| 6 | 브랜드 X를 얼마나 자주 이용하시나요? | multiple | 주 1회 이상;월 13회;연 12회;사용 경험 없음 | TRUE |
| 7 | 브랜드 X 제품/서비스에 대한 전반적 만족도 | scale | 1-5 | TRUE |
| 8 | 경쟁 브랜드 대비 브랜드 X의 수준은? | scale | 1-5 | TRUE |
| 9 | 앞으로 브랜드 X를 구매할 의사가 있습니까? | scale | 1-5 | TRUE |
| 10 | 브랜드 X가 개선하면 좋을 점은? | paragraph | - | FALSE |

- 위 테이블을 Google Sheet에 붙여넣기 

    - 구글 Sheet 여는 법 1 : [drive.google.com](https://drive.google.com/)

    - 구글 Sheet 여는 법 1 : chrome 브라우저 주소 창에 'sheet.new' 입력

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/154712_bPlQnFgFyhX8Pqjqwe?q=80&s=1280x180&t=outside&f=webp)

# 3. Apps Script로 설문 만들기

- 설문 만들어주는 코드 생성하기  

```
ChatGPT:
방금 만든 **구글 시트(질문 데이터베이스)**를 읽어서 자동으로 Google Form을 생성하는 Apps Script 코드 만들어줘
```

```
function createFormFromSheet() {
  // 현재 시트 가져오기
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var data = sheet.getDataRange().getValues();
  
  // 첫 행(헤더)은 제외
  var headers = data[0];
  var rows = data.slice(1);

  // 새로운 Google Form 생성
  var form = FormApp.create("브랜드 X 인지도 및 태도 조사");
  form.setDescription("브랜드 X에 대한 인지도, 태도, 이용 경험, 구매 의사를 파악하기 위한 설문입니다.");

  // 응답 저장용 스프레드시트 생성 후 연결
  var ss = SpreadsheetApp.create("brand_x_survey_responses");
  form.setDestination(FormApp.DestinationType.SPREADSHEET, ss.getId());

  // 행 반복 → 질문 생성
  rows.forEach(function(row) {
    var qNo = row[0];
    var question = row[1];
    var type = row[2].toLowerCase();
    var options = row[3] ? row[3].toString().split(";") : [];
    var required = (row[4] === true || row[4] === "TRUE");

    var item;

    switch (type) {
      case "multiple": // 객관식 단일 선택
        item = form.addMultipleChoiceItem()
                   .setTitle(question)
                   .setChoiceValues(options);
        break;

      case "checkbox": // 객관식 복수 선택
        item = form.addCheckboxItem()
                   .setTitle(question)
                   .setChoiceValues(options);
        break;

      case "scale": // 척도형 (예: "1-5")
        var bounds = options[0].split("-");
        var lower = parseInt(bounds[0], 10);
        var upper = parseInt(bounds[1], 10);
        item = form.addScaleItem()
                   .setTitle(question)
                   .setBounds(lower, upper);
        break;

      case "paragraph": // 서술형
        item = form.addParagraphTextItem()
                   .setTitle(question);
        break;

      default:
        Logger.log("지원되지 않는 유형: " + type);
    }

    // 필수 여부 설정
    if (item && required) {
      item.setRequired(true);
    }
  });

  Logger.log("응답 링크: " + form.getPublishedUrl());
  Logger.log("편집 링크: " + form.getEditUrl());
}

```

- 구글 시트 > '확장 프로그램' > 'Apps Script' 선택

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/154609_4y4obNLGtTtSPrI8QY?q=80&s=1280x180&t=outside&f=webp)

- 아래 Code.gs에 있는 'function my Function() ~~~' 을 모두 삭제

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/155506_oZpex9Yes3VZY0VBjc?q=80&s=1280x180&t=outside&f=webp)

- 위 ChatGPT가 만들어준 코드를 Code.gs에 복붙 > '저장' 버튼 클릭

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/155734_oe4voOUBUgqHWVDcge?q=80&s=1280x180&t=outside&f=webp)

- '실행' 버튼 클릭 > 권한 검토 클릭 

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/160702_DxDPo9jYU4r0Blzpsd?q=80&s=1280x180&t=outside&f=webp)

- 내 계정 선택

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/160826_Eq77dkrv8oQih9IwSL?q=80&s=1280x180&t=outside&f=webp)

- '고급' 클릭

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/160855_u9p0siGIQ1HpASDDCh?q=80&s=1280x180&t=outside&f=webp)

-  "'제목 없는 프로젝트(으)로 이동(안전하지 않음)" 선택

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/161011_AwgKf0sK1O5eomUlE0?q=80&s=1280x180&t=outside&f=webp)

-  모두 선택 > 계속

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/161142_AVUYFs8kvcMDd2sZ4H?q=80&s=1280x180&t=outside&f=webp)

- 실행 후 > 실행 로그에 응답 링크와 편집 링크가 나오면 OK!

![Image](https://upload.cafenono.com/image/slashpageHome/20250914/162352_Fed0a7YWTDknGd9Gh9?q=80&s=1280x180&t=outside&f=webp)

    - 응답 링크

```
https://docs.google.com/forms/d/e/1FAIpQLSd6vmWZOrjDecUpBzxo0fzTwLNrUxB9aG70IrBGbcjcbFEMqg/viewform
```

    - 편집 링크

```
https://docs.google.com/forms/d/1AIKGqtV3BIa9wfbVYV26i_tHCOc6L363kkJfu6SBgbo/edit
```

 

# 4. 설문 수정하는 방법

- 빠른 수정: 편집 링크에서 바로 고치기

- 시트에서 수정 후, Apps Script 다시 실행

    - 설문 문항을 구글 시트에서 데이터베이스 형태로 만들고 관리하는 이유

For the site tree, see the [root Markdown](https://slashpage.com/lion.md).
