0% found this document useful (0 votes)
31 views4 pages

Kodovi 3

The document describes functions for copying rows of data between sheets in a spreadsheet, filtering data by regex matching, appending rows of data to a sheet, and getting the last row of a sheet.

Uploaded by

Andjela
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views4 pages

Kodovi 3

The document describes functions for copying rows of data between sheets in a spreadsheet, filtering data by regex matching, appending rows of data to a sheet, and getting the last row of a sheet.

Uploaded by

Andjela
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

function 

copyRowsWithSetValues() {
  let spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  let Sheet2 = spreadSheet.getSheetByName("sheet2");
  
  let sheet2Range = Sheet2.getDataRange();
  let sheet2Values = sheet2Range.getValues();
  
  let rowCount = sheet1Values.length;
  let columnCount = sheet1Values[0].length;
  
  let Sheet1 = spreadSheet.getSheetByName("sheet1");
  let sheet2Range = Sheet1.getRange(1, 1, rowCount, columnCount);
  
  sheet1Range.setValues(sheet2Values);

function copyRowsWithSetValues() {
let spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
let sheet2 = spreadSheet.getSheetByName(“sheet2”);

let sourceRange = sheet2.getDataRange();


let sheet2Values = sheet2Range.getValues();

let rowCount = sheet1Values.length;


let columnCount = sheet1Values[0].length;

let sheet1 = spreadSheet.getSheetByName(“sheet1”);


let sheet2Range = sheet1.getRange(1, 1, rowCount, columnCount);

sheet1Range.setValues(sheet2Values);
}

function Export() {
  const sourceData = SpreadsheetApp.getActive().getRange('RESULTS!
J4:V10').getValues();
  console.log('sourceData rows: ' + sourceData.length);
  const targets = {
    today: {
      column: 13 - 1, // zero-indexed
      regex: /Today/i,
      sheet: SpreadsheetApp.openById('..ss_id...').getSheetByName('DueIn'),
    },
    tomorrow: {
      column: 13 - 1, // zero-indexed
      regex: /Tomorrow/i,
      sheet: SpreadsheetApp.openById('..ss_id...').getSheetByName('DueIn'),
    },
  };
  for (const [key, target] of Object.entries(targets)) {
    const filteredData = sourceData.filter(
      row => String(row[target.column]).match(target.regex)
    );
    console.log(key + ' rows: ' + filteredData.length);
    if (filteredData.length) {
      appendRows_(target.sheet, filteredData);
    }
  }
}
 

/**
* Appends an array or a value to the bottom of a range starting
* at the given column in the first row where the column is blank.
*
* @param {SpreadsheetApp.Sheet} sheet A spreadsheet sheet to append the
data to.
* @param {Object[][]} data The data to append. This argument can be a 2D
array, 1D array or a single value.
* @param {Number} optColumn Optional. The column number where to start
appending the data. Defaults to 1.
* @return {Object} An object with fields {Range} range, {Number} rowStart,
columnStart, numRows, numColumns.
*/
function appendRows_(sheet, data, optColumn) {
  // version 1.7, written by --Hyde, 11 February 2021
  //  - add + 1 in getLastRow_(sheet, optColumn) + 1
  // version 1.6, written by --Hyde, 8 February 2021
  //  - use getLastRow_()
  //  - remove check of arguments.length
  //  - add columnStart, numColumns
  // version 1.5, written by --Hyde, 1 April 2020
  //  - remove toast(), just throw error
  // version 1.4, written by --Hyde, 28 January 2020
  //  - simplify conversion to 2D array
  // version 1.3, written by --Hyde, 26 January 2020
  //  - return { range: |Range where new data was written|, rowStart: |
start row of appended range|, numRows: |height of appended range| }
  // version 1.2, written by --Hyde, 21 January 2020
  //  - use Array.isArray, Number
  // version 1.1, written by --Hyde, 23 November 2018
  //  - convert single value and 1D array to 2D array
  // version 1.0, written by --Hyde, 31 August 2015
  //  - initial version
  if (!Array.isArray(data)) {
    data = [[data]];
  } else if (!Array.isArray(data[0])) {
    data = [data];
  }
  const rowStart = getLastRow_(sheet, optColumn) + 1;
  const columnStart = Number(optColumn) || 1;
  const numRows = data.length;
  const numColumns = data[0].length;
  const range = sheet.getRange(rowStart, columnStart, numRows, numColumns);
  range.setValues(data);
  return { range: range, rowStart: rowStart, columnStart: columnStart,
numRows: numRows, numColumns: numColumns };
}
 
 
/**
* Gets the position of the last row that has visible content in
* a column of the sheet, or the position of the last row that
* has visible content in any column of the sheet.
*
* @param {Sheet} sheet A sheet in a spreadsheet.
* @param {Number} columnNumber Optional. The 1-indexed position of a column
in the sheet. When missing, the function returns the position of the last
row that has visible content in any column.
* @return {Number} The 1-indexed row number of the last row that has
visible content in column columnNumber, or 0 if the column is blanky.
*/
function getLastRow_(sheet, columnNumber) {
  // version 1.4, written by --Hyde, 11 February 2021
  //  - add || 1 in sheet.getLastRow() || 1
  // version 1.3, written by --Hyde, 18 August 2020
  //  - use ternary
  // version 1.2, written by --Hyde, 17 July 2020
  //  - use sheet.getLastRow()
  //  - see https://support.google.com/docs/thread/59217378
  // version 1.1, written by --Hyde, 13 April 2020
  //  - see https://support.google.com/docs/thread/39585956
  // version 1.0, written by --Hyde, 4 February 2020
  //  - see https://support.google.com/docs/thread/27576311
  const values
    = columnNumber
      ? sheet.getRange(1, columnNumber, sheet.getLastRow() || 1,
1).getDisplayValues()
      : sheet.getDataRange().getDisplayValues();
  for (var row = values.length - 1; row >= 0; row--) {
    if (values[row].join('')) {
      break;
    }
  }
  return row + 1;
}
 

function Test() {
var sSheet = SpreadsheetApp.getActiveSpreadsheet();
var srcSheet = sSheet.getSheetByName("Refinery");
var lastRow = srcSheet.getLastRow();
var range = srcSheet.getRange("E1:G" + lastRow);
var values = range.getValues().map(([cells, day, hour]) => {
if ((day != "") || (day != null) && (hour != "") || (hour != null) &&
(cells == "-")) {
var neudate = new Date();
var Btag = 1000 * 60 * 60 * 24 * day
var Bstd = 1000 * 60 * 60 * hour
var DATUM = (new Date(neudate.getTime() + Btag + Bstd))
DATUM = Utilities.formatDate(DATUM, "GMT+2", "dd.MM.yyyy HH:mm:ss")
return [DATUM];
}
return [cells]
});
range.offset(0, 0, values.length, 1).setValues(values);
}
function paste() {

  var sheetNameToWatch = "Sheet 2";

  var sheetNameToMoveTheRowTo = "Sheet 1";

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = SpreadsheetApp.getActiveSheet();
  var range = sheet.getActiveCell();

  if (sheet.getName() == sheetNameToWatch && range.getColumn()) {

    var targetSheet = ss.getSheetByName(sheetNameToMoveTheRowTo);
    var targetRange = targetSheet.getRange(targetSheet.getLastRow() + 1, 1);
    sheet.getRange(range.getRow(), 1, 1, 
  sheet.getLastColumn()).copyTo(targetRange, {contentsOnly:true});
  }
}
aaaa

bbbb

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy