반응형

전체 글 493

Apps Script로 Google Sheets의 특정 셀 값을 계산해 다른 셀에 값 뿌려주기

아래의 Google Sheets에서, max 값과 min 값의 차이를 diff 컬럼에 계산 해 넣으려고 한다. 행 수 만큼 max와 min값을 가져와, 연산한 뒤 셀에 계산된 값 할당 문제는 한 셀 씩 값을 채우기 때문에, 한 셀 씩 값이 채워지는게 눈에 보임. 느려보인다. function calcDataSingle() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("tempature_kr"); for (var i=2; i

GCP/Apps Script 2023.02.09

Apps Script로 Google Sheets의 Chart 생성

Apps Script를 이용해, Google Sheets에서 chart를 생성해본다. 아래와 같은 표가 있다. SpreadSheetApp의 newChart() 함수를 이용한다. chart라는 변수에 생성할 chart를 담아주고, insertChart 에서 chart를 build해준다. 한줄짜리 라인차트 생성 function makeSingleLineChart() { const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("차트_테스트"); const range = sheet.getRange("A2:B13"); const chart = sheet.newChart().setChartType(Charts.ChartType.LINE) .addRan..

GCP/Apps Script 2023.01.31

Apps Script로 Google Sheets의 Checkbox 생성 후, Checkbox 조작하기

Apps Script를 이용해, 1. Google Sheets에 Checkbox를 생성 2. 체크가 되엇을떄 다음셀에 값을 입력 3. 체크된 checkbox 수 세기 4. 전체선택/전체선택해제 를 해보겠다. 체크박스 생성 function createCheckbox() { const sheetName = "sheetNameHere"; const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName); sheet.getRange("B2:B10").insertCheckboxes(); } 체크박스 선택 edit event 체크박스 선택 시, 앞 셀의 값을 뒷 셀에 뿌려주기. /** * edit event * @param {object} e..

GCP/Apps Script 2023.01.25

Apps Script로 생성한 웹페이지에서(웹앱 배포) 입력한 값을 Google Sheets에 저장하기

Apps Script로 간단한 웹페이지 생성하기 Apps Script로 간단한 웹페이지를 생성 할 수 있다. 이 웹페이지에서 Bigquery, Database, Google sheets로 데이터를 입력(입력)할 수 있다. Simple Trigger인 doGet()를 이용한다. function doGet(e) { return HtmlService.createT whiseung.tistory.com Apps Script로 간단한 웹페이지를 띄워봤는데 생성한 웹페이지에서 입력 받은 값을, Google Sheets에 입력하는 기능을 구현해본다. Apps script 에서 제공하는 doGet 트리거를 이용한다. Code.gs function doGet(e) { Logger.log(JSON.stringify(e))..

GCP/Apps Script 2023.01.20

JAVA 프로젝트로 GCP BigQuery TRUNCATE TABLE 후, bulk INSERT(Streaming buffer) "Table is truncated." 에러발생

이 프로세스로 openAPI를 가져와 BigQuery에 데이터를 저장하는 프로그램 개발한다. 테스트 중 InsertAll 로 저장한 테이블이 마음대로 컨트롤되지 않는다. 찾아보니 : https://stackoverflow.com/questions/70013949/bigquery-404-table-is-truncated-when-insert-right-after-truncate BigQuery: 404 "Table is truncated." when insert right after truncate I truncate my table by executing a queryJob described here: https://cloud.google.com/bigquery/docs/quickstarts/quicks..

GCP/BigQuery on GCP 2023.01.17

JAVA 프로젝트로 GCP BigQuery에 BULK INSERT(Streaming buffer)로 데이터 집어넣기

https://whiseung.tistory.com/entry/JAVA-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EB%A1%9C-GCP-BigQuery%EC%9D%98-INSERTUPDATE-%EC%BF%BC%EB%A6%AC-%EB%82%A0%EB%A0%A4%EB%B3%B4%EA%B8%B0 JAVA 프로젝트로 GCP BigQuery의 INSERT/UPDATE 쿼리 날려보기 https://whiseung.tistory.com/entry/JAVA-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EB%A1%9C-GCP-BigQuery%EC%9D%98-Select-%EC%BF%BC%EB%A6%AC-%EB%82%A0%EB%A0%A4%EB%B3%B4%EA%B8%B0 tru..

GCP/BigQuery on GCP 2023.01.16

Apps Script로 Google Sheets의 sheets들 index(목차) 만들기

엑셀 인 Google Sheets 는 sheet를 계속 생성할 수 있다. 한 파일 안에 sheet 들을 목차 형식으로 빼고싶어졌다. 현재 개발중인 Google sheets의 sheet 들. 일단, Google Sheets 의 sheet 이름들을 가져온다. function getSheetsNameAndCreateIndex() { const sheet = SpreadsheetApp.getActiveSpreadsheet(); const sheets = sheet.getSheets(); for ( i in sheets ) { const sheetName = sheets[i].getName(); console.log(sheetName); } } 시트이름과, URL 링크를 목차라는 sheet 에 뿌려줘본다. fun..

GCP/Apps Script 2023.01.13

Apps Script로 매일 MSSQL 데이터(신규입사자 정보) 메일로 받기

매일아침 신규입사자 정보를 메일로 받고싶다. DB는 MSSQL이다. MSSQL에서, 신규입사자 테이블에 입사일이 오늘인 사람의 데이터를 쿼리해온다. 신규입사자가 아니라도 매일매일 받고싶은 정보가 있을경우 사용가능. SELECT id, name, phone, dept, join_date, status FROM dbo.new_employee SELECT id, name, phone, dept, join_date, status FROM dbo.new_employee WHERE join_date = convert(varchar(10), getdate(), 120) const address = 'mssql ip address'; const port = 'mssql port'; const user = 'mssql ..

GCP/Apps Script 2023.01.13

Apps Script로 Google Sheets의 종속되는 Dropdown 만들기

입력시트에서, 공통데이터 시트의 데이터들을 dropdown으로 선택하여 입력하고 싶다. 하지만 data validation을 위해 시도에서 서울시를 선택하면 서울시에 해당하는 지사들만 입력하고 싶다. 동작지사 강남지사 강남지사 중구지사 중구지사 관악지사 강북지사 강동지사 공통데이터에서 사용할 데이터 범위의 이름을 먼저 지정해준다. 범위를 지정하고, 우클릭을 한 뒤 [이름이 지정된 범위 지정] 을 클릭한다. 범위 이름을 지정하면, 오른쪽과 같이 지정된 셀 범위의 이름을 확인 할 수 있다. /** * 데이터 구조 가져오기. */ function getStructreData() { const ss = SpreadsheetApp.getActive(); const data = ss.getRangeByName("d..

GCP/Apps Script 2023.01.12
반응형