Chcę ustawić tekst lub liczbę w Arkuszu Google ze skryptu.
Chcę ustawić Hello
lub numerować 9
w komórce F2
. Jak dotąd znalazłem ten kod:
SpreadsheetApp.getActiveRange().setValue('hello');
ale to nie określa, która komórka.
Chcę ustawić tekst lub liczbę w Arkuszu Google ze skryptu.
Chcę ustawić Hello
lub numerować 9
w komórce F2
. Jak dotąd znalazłem ten kod:
SpreadsheetApp.getActiveRange().setValue('hello');
ale to nie określa, która komórka.
Odpowiedzi:
Poniższy kod robi to, co jest wymagane
function doTest() {
SpreadsheetApp.getActiveSheet().getRange('F2').setValue('Hello');
}
Użyj setValue
metody Range
class, aby ustawić wartość konkretnej komórki.
function storeValue() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
// ss is now the spreadsheet the script is associated with
var sheet = ss.getSheets()[0]; // sheets are counted starting from 0
// sheet is the first worksheet in the spreadsheet
var cell = sheet.getRange("B2");
cell.setValue(100);
}
Możesz także zaznaczyć komórkę za pomocą numerów wierszy i kolumn.
var cell = sheet.getRange(2, 3); // here cell is C2
Możliwe jest również ustawienie wartości wielu komórek jednocześnie.
var values = [
["2.000", "1,000,000", "$2.99"]
];
var range = sheet.getRange("B2:D2");
range.setValues(values);
Rozwiązanie : SpreadsheetApp.getActiveSheet().getRange('F2').setValue('hello')
Wyjaśnienie:
Ustawienie wartości w komórce w arkuszu kalkulacyjnym, do której dołączony jest skrypt
SpreadsheetApp.getActiveSpreadsheet().getSheetByName(SHEET_NAME).getRange(RANGE).setValue(VALUE);
Ustawienie wartości w komórce w aktualnie otwartym arkuszu, do której jest dołączony skrypt
SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(RANGE).setValue(VALUE);
Ustawianie wartości w komórce w jakimś arkuszu kalkulacyjnym, do którego NIE jest dołączony skrypt (znana nazwa arkusza docelowego)
SpreadsheetApp.openById(SHEET_ID).getSheetByName(SHEET_NAME).getRange(RANGE).setValue(VALUE);
Ustawienie wartości w komórce w jakimś arkuszu kalkulacyjnym, do którego NIE jest dołączony skrypt (znana pozycja arkusza docelowego)
SpreadsheetApp.openById(SHEET_ID).getSheets()[POSITION].getRange(RANGE).setValue(VALUE);
To są stałe, musisz je sam zdefiniować
SHEET_ID
SHEET_NAME
POSITION
VALUE
RANGE
Przez skrypt dołączony do arkusza rozumiem, że skrypt rezyduje w edytorze skryptów tego arkusza. Nie dołączony oznacza, że nie znajduje się w edytorze skryptów tego arkusza. Może być w dowolnym innym miejscu.
SpreadsheetApp.getActiveSpreadsheet().getSheetName('FinanceIndex')
. W przeciwnym razie zadaj nowe pytanie stackoverflow.com/help/how-to-ask