How Can I Change cell on Google sheet

any update here plz

untill you change, how can we update?

script updated

https://script.google.com/macros/s/AKfycbxiqabsQOG7P1V4tdWFsSwMiXEfM4uHbqXOdtEymj7nbvm2ThT_qkZDPYOrccr8__Qu/exec

id
AKfycbxiqabsQOG7P1V4tdWFsSwMiXEfM4uHbqXOdtEymj7nbvm2ThT_qkZDPYOrccr8__Qu

script

function doGet(e) {

var ss = SpreadsheetApp.openById(e.parameter.ID);

var sh = ss.getSheetByName(e.parameter.SH);

var fn = e.parameter.FN;

var rg = sh.getDataRange().getValues();

// enter row number and column number to return A1 Notation Cell reference

if ( fn == ‘getCellRef’ ) {

var ref = sh.getRange(e.parameter.ROW,e.parameter.COL).getA1Notation();

return ContentService.createTextOutput(ref);

}

// enter start and end row numbers and column numbers to return A1 Notation Range reference

else if ( fn == ‘getRangeRef’ ) {

var ref = sh.getRange(e.parameter.ROW,e.parameter.COL,e.parameter.ROW1,e.parameter.COL1).getA1Notation();

return ContentService.createTextOutput(ref);

}

// enter A1 notation reference to return cell value

else if ( fn == ‘readCell’ ) {

var ref = sh.getRange(e.parameter.REF).getValue();

return ContentService.createTextOutput(ref);

}

// enter row number to return all values in row as a list

else if ( fn == ‘readRow’ ) {

var ref = sh.getRange(parseInt(e.parameter.ROW),1,1,rg[0].length).getValues();

return ContentService.createTextOutput(JSON.stringify(ref));

}

// enter column number (A=1/B=2/etc.) to return all values in column as a list

else if ( fn == ‘readCol’ ) {

var ref = sh.getRange(2,parseInt(e.parameter.COL),rg.length-1,1).getValues();

return ContentService.createTextOutput(JSON.stringify(ref));

}

}

Have you tested it? @Mohamed_Alsabagh

(Sharing stopped and deleted the file)

Result; - Working fine, the blocks and code as per your requirement

OK plz send aia file plz

sendver11.aia (1.7 MB)

Making the gsheet to accesible fro few more min, only timer it will be deleted from sys

Kindly
Send script
and
url for googlesheet

Have you open the aia?

It contains my script url as well as Google sheet link. Else check my last reply. (The deleted one)

i need script not url script yes url for script exist but i need script in side url i think this is the problem he work on your aia file as well ?

this url for script

Error?

If you run script url alone after deploy, it will show such error , but no issue . Just carry on…

PS: you must enable show list as json in project setting

now check the aia given in the previous post(post no.35)… and :point_right: check this gsheet

this is my script url


https://script.google.com/macros/s/AKfycbwpyxLuuvxwAlNeBpyFizT0gxXg55ObMIQDyoKL8oeyVF5MZHE/exec

even for my default script url too will show such error, but after adding to the blocks it will work fine

I need script like this not url
Same like this but your script

function doGet(e) {

var ss = SpreadsheetApp.openById(e.parameter.ID);

var sh = ss.getSheetByName(e.parameter.SH);

var fn = e.parameter.FN;

var rg = sh.getDataRange().getValues();

// enter row number and column number to return A1 Notation Cell reference

if ( fn == ‘getCellRef’ ) {

var ref = sh.getRange(e.parameter.ROW,e.parameter.COL).getA1Notation();

return ContentService.createTextOutput(ref);

}

// enter start and end row numbers and column numbers to return A1 Notation Range reference

else if ( fn == ‘getRangeRef’ ) {

var ref = sh.getRange(e.parameter.ROW,e.parameter.COL,e.parameter.ROW1,e.parameter.COL1).getA1Notation();

return ContentService.createTextOutput(ref);

}

// enter A1 notation reference to return cell value

else if ( fn == ‘readCell’ ) {

var ref = sh.getRange(e.parameter.REF).getValue();

return ContentService.createTextOutput(ref);

}

// enter row number to return all values in row as a list

else if ( fn == ‘readRow’ ) {

var ref = sh.getRange(parseInt(e.parameter.ROW),1,1,rg[0].length).getValues();

return ContentService.createTextOutput(JSON.stringify(ref));

}

// enter column number (A=1/B=2/etc.) to return all values in column as a list

else if ( fn == ‘readCol’ ) {

var ref = sh.getRange(2,parseInt(e.parameter.COL),rg.length-1,1).getValues();

return ContentService.createTextOutput(JSON.stringify(ref));

}

}
I think i have issue on my script

function doGet(e) {

  var ss = SpreadsheetApp.openById(e.parameter.ID);
  var sh = ss.getSheetByName(e.parameter.SH);
  var fn = e.parameter.FN;
  var rg = sh.getDataRange().getValues();
  
  // enter row number and column number to return A1 Notation Cell reference
  if ( fn == 'getCellRef' ) {
    var ref = sh.getRange(e.parameter.ROW,e.parameter.COL).getA1Notation();
    return ContentService.createTextOutput(ref);
  } 
  
  // enter start and end row numbers and column numbers to return A1 Notation Range reference
  else if ( fn == 'getRangeRef' ) {
    var ref = sh.getRange(e.parameter.ROW,e.parameter.COL,e.parameter.ROW1,e.parameter.COL1).getA1Notation();
    return ContentService.createTextOutput(ref);
  }
  
  // enter A1 notation reference to return cell value
  else if ( fn == 'readCell' ) {
    var ref = sh.getRange(e.parameter.REF).getValue();
    return ContentService.createTextOutput(ref);
  }
  
  // enter row number to return all values in row as a list
  else if ( fn == 'readRow' ) {
    var ref = sh.getRange(parseInt(e.parameter.ROW),1,1,rg[0].length).getValues();
    return ContentService.createTextOutput(JSON.stringify(ref));
  }
  
  // enter column number (A=1/B=2/etc.) to return all values in column as a list
  else if ( fn == 'readCol' ) {
    var ref = sh.getRange(2,parseInt(e.parameter.COL),rg.length-1,1).getValues();
    return ContentService.createTextOutput(JSON.stringify(ref));
  }
  
  // enter A1 notation reference to return range values as a list
  else if ( fn == 'readRange' ) {
    var ref = sh.getRange(e.parameter.REF).getValues();
    return ContentService.createTextOutput(JSON.stringify(ref));
  }
  
  // returns all values on sheet, including headers
  else if ( fn == 'readSheet' ) {
    return ContentService.createTextOutput(JSON.stringify(rg));     
  }
 
  // outputs results for SQL query of all data  
  else if ( fn == 'querySheet' ) {
    var sql = e.parameter.SQL;
    var hdr = e.parameter.HDR;
    if ( hdr == 0 ) {
    var rgq = sh.getName() + "!" + sh.getDataRange().getA1Notation().replace('A1','A2');
    var qry = '=query(' + rgq + ';\"' + sql + '\";0)';
    } else if ( hdr == 1 ) {
    var rgq = sh.getName() + "!" + sh.getDataRange().getA1Notation();
    var qry = '=query(' + rgq + ';\"' + sql + '\";1)';
    }
    var ts = ss.insertSheet();
    var setQuery = ts.getRange(1,1).setFormula(qry);
    var getResult = ts.getDataRange().getValues();
    ss.deleteSheet(ts); 
    return ContentService.createTextOutput(JSON.stringify(getResult));
  }
  
  // enter row number to delete that row
  else if ( fn == 'deleteRow' ) {
    sh.deleteRow(parseInt(e.parameter.ROW));
    return ContentService.createTextOutput('Row ' + e.parameter.ROW + ' has been deleted');
  }
  
  // enter row number to delete that row
  else if ( fn == 'deleteCol' ) {
    sh.deleteColumn(parseInt(e.parameter.COL));
    return ContentService.createTextOutput('Column ' + e.parameter.COL + ' has been deleted');
  }
  
  // enter A1 notation reference to write cell value
  else if ( fn == 'writeCell' ) {
    sh.getRange(e.parameter.REF).setValue(e.parameter.DATA);
    return ContentService.createTextOutput('Value: ' + e.parameter.DATA + ' written to cell ' + e.parameter.REF);
  }
  
  // enter row number to write row values
  else if ( fn == 'writeRow' ) {
    var data = JSON.parse('[' + e.parameter.DATA + ']');
    sh.getRange(e.parameter.ROW,1,1,data[0].length).setValues(data);
    return ContentService.createTextOutput('Values: ' + e.parameter.DATA + ' written to row ' + e.parameter.ROW);

  }
  
  // enter row number to write row values
  else if ( fn == 'writeCol' ) {
    var data = JSON.parse(e.parameter.DATA);
    sh.getRange(1,e.parameter.COL,data.length,1).setValues(data);
    return ContentService.createTextOutput('Values: ' + e.parameter.DATA + ' written to column ' + e.parameter.COL);
  }
  
  // enter A1 notation reference to write cell values
  else if ( fn == 'writeRange' ) {
    var data = JSON.parse(e.parameter.DATA);
    var ref = sh.getRange(e.parameter.REF).setValues(data);
    return ContentService.createTextOutput('Values: ' + e.parameter.DATA + ' written to cells ' + e.parameter.REF);
  }
  
  // enter row number to write row values
  else if ( fn == 'addRow' ) {
    var data = JSON.parse('[' + e.parameter.DATA + ']');
    var lr = sh.getLastRow()+1;
    sh.getRange(lr,1,1,data[0].length).setValues(data);
    return ContentService.createTextOutput('Values: ' + e.parameter.DATA + ' written to last row ' + lr);
  }
  
  // enter row number to write row values
  else if ( fn == 'addCol' ) {
    var data = JSON.parse(e.parameter.DATA);
    var lc = sh.getLastColumn()+1;
    sh.getRange(1,lc,data.length,1).setValues(data);
    return ContentService.createTextOutput('Values: ' + e.parameter.DATA + ' written to column ' + lc);
  }
  
  // enter A1 notation reference and formula to set formula to cell
  else if ( fn == 'insertFormula' ) {
    var ref = sh.getRange(e.parameter.REF).setValue(e.parameter.DATA);
    return ContentService.createTextOutput('Formula: ' + e.parameter.DATA + ' inserted to  ' + e.parameter.REF);
  }
}

i must edit any thing on this script if i use anther sheet or no editing ?

and this id also must edit any thing on it if i change shhet or script
blocks (1)

Pls open the aia and see to this block,

Your final url would be like this

plsease make adjustment like this… also , I repeat, Pls see the aia

I forget to add one more make a list at here… it must be two make a list else it will throw error

image

this my block for my project it’s same

blocks (3)

1 Like

dont use if else block else your other operations may not work, that is bakground changing…

Before that, test my aia… and see the response(if so, you wont have any doubt… else you will have few more doubts)


this for what ?