2013-06-17 4 views
0

나는 매월 13 장, 공백으로 된 통합 문서를 가지고 있습니다. 워크 시트의 모든 사람들은 같은 형식입니다. 나는 같은 열의 "기한 초과"라는 단어가있는 모든 행을 마지막 시트에 복사하여 모든 면밀한 검사의 마스터 목록을 제공하려고합니다. 비슷한 문제에 관한 3 개의 게시물을 읽었으나 코드의 각 라인이 내가 필요한 것을 위해 그것을 만드는데 충분하다는 것을 이해할 수는 없습니다. 그들이이 솔루션을 구현하는 데 도움이된다면 paypal을 통해 누군가에게 팁을 주겠다. 나는 프로그래머가 아닌 디젤 정비공이다. 내 상사는 내가 무엇을 할 수 있다고 생각한다. 그 도움이된다면행의 조건부 복사 Google 스프레드 시트

항상 모든 12 워크 시트의 행 'I'(매월 1)에있을 것 연체 단어는

나뿐만 아니라 문서를 공유 할 수 있습니다. 그것은이 같은 몇 가지 일을 보일 수 있습니다

+0

SO는 프로그래머가 특정 문제에 대해 무료로 서로 도와주는 곳입니다. 그래서, 당신이 뭔가를 시도하고 특정 도움이 필요하다면, 여기의 커뮤니티는 최선을 다해 도움을 얻을 것입니다. 그러나 readymade 솔루션이 필요한 경우 SO가 가장 적합한 장소가 아닙니다. – Srik

답변

0

...

function moveRows() { 
    var values = SpreadsheetApp.getActiveSpreadsheet() 
    .getSheetByName('Sheet1').getRange('A2:I').getValues(); 
    var row, len, data = []; 

    for (row = 0, len = values.length; row < len; row++) 
    if (values[row][8] == 'Overdue') 
     data.push([values[row]]); 

    var dest = SpreadsheetApp.openById('YOUR_SS_ID').getSheetByName('Sheet1'); 
    var lastRow = dest.getLastRow(); 
    dest.getRange('A1').offset(lastRow, 0, data.length, data[0].length).setValues(data); 
} 

그것은 소스 시트에서 행을 제거 아니에요 (당신이 그것을위한 설정이 필요하지 (13)처럼 단지 1 시트), 그냥 복사.

+0

그래서 12 개의 시트를 모두 복사하려면이 시트를 편집해야합니다. ".getSheetByName ('Sheet1'). getRange ('A2 : I ') .getValues ​​(); var row, len, data = []; " 루프 오른쪽으로 – user2494975

+0

당신은'data'가 루프에서 리셋되는 것을 원하지 않지만,'Sheet1'은 각각의 루프 반복으로 대체 될 필요가 있습니다. 새로운 'for loop'도 포함 시켜라. –

관련 문제