Problem z resetowaniem komórek |
Problem z resetowaniem komórek |
19.11.2019, 22:57:47
Post
#1
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 18.11.2019 Ostrzeżenie: (0%) |
Witam,
Gdzieś znalazłem skrypt na resetowanie komórek w Exelu i resetuje bardzo dobrze. Dokładniej skrypt podstawia w komórkę wartość 0. Mam z nim problem bo nie znam się na Javascript, i czasami zamiast wartości zero to w całej kolumnie z "0" zmienia na wartość "1". Dlaczego tak się dzieje? Kod function modifyCell(cellName) {
var range = SpreadsheetApp.getActiveSheet().getRange(cellName); var toAdd = 0; range.setValue(range.getValue() + toAdd); } function increaseLine2() { modifyCell("B5:B9"); modifyCell("B11:B22"); modifyCell("B24:B35"); modifyCell("B37:B44"); modifyCell("B46:B50"); modifyCell("B52:B57"); modifyCell("B59:B72"); modifyCell("C5:C9"); modifyCell("C11:C22"); modifyCell("C24:C35"); modifyCell("C37:C44"); modifyCell("C46:C50"); modifyCell("C52:C57"); modifyCell("C59:C72"); } |
|
|
20.11.2019, 09:10:32
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 762 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
To nie jest JavaScript, lecz Visual Basic.
Funkcja nie służy resetowaniu wartości, ale modyfikacji, ale właściwie nie robi nic, bo do wartości komórki dodaje 0. Jeśli chcesz zbudować sobie taki skrypt, to nagraj makro i przeanalizuj jego kod. -------------------- |
|
|
20.11.2019, 14:16:36
Post
#3
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 18.11.2019 Ostrzeżenie: (0%) |
Chodzi mi o zmodyfikowanie tego skryptu tak aby nie zmieniał na wartość "1". Bo czasami po naciśnięciu przycisku RESET zamiast "0" podstawia "1" i nie wiem czym jest to związane.
|
|
|
20.11.2019, 14:23:06
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 762 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Dlatego sugerowałem abyś nagrał makro. Zobaczyłbyś jak wygląda wtedy kod kiedy wstawiasz w komórkę wartość "0".
Pewnie nie masz ochoty tego zrobić, to zastanów się do czego służy metoda setValue i co powinieneś w niej zmienić. -------------------- |
|
|
20.11.2019, 14:38:56
Post
#5
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 18.11.2019 Ostrzeżenie: (0%) |
Nagrałem to makro i wyszło że podstawia "1" zamiast "0". To co do tej pory mówiłem.
Kod function Makrobeznazwy() {
var spreadsheet = SpreadsheetApp.getActive(); spreadsheet.getRange('B5').activate(); spreadsheet.getCurrentCell().setValue('1'); spreadsheet.getRange('C6').activate(); spreadsheet.getCurrentCell().setValue('1'); spreadsheet.getRange('B7').activate(); spreadsheet.getCurrentCell().setValue('1'); spreadsheet.getRange('C8').activate(); spreadsheet.getCurrentCell().setValue('1'); increaseLine2(); }; |
|
|
20.11.2019, 14:40:37
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 762 Pomógł: 1822 Dołączył: 11.03.2014 Ostrzeżenie: (0%) |
Wstawiaj ręcznie "0" podczas nagrywania.
Zresztą już powinieneś zauważyć co masz zmienić w kodzie z pierwszego postu. -------------------- |
|
|
20.11.2019, 14:42:11
Post
#7
|
|
Grupa: Zarejestrowani Postów: 7 Pomógł: 0 Dołączył: 18.11.2019 Ostrzeżenie: (0%) |
Już znalazłem, dzięki WIELKIE.
Haczyki za pomoc poszły. Temat do ZAMKNIĘCIA. Dziękuje Ten post edytował TaZZo 20.11.2019, 14:43:24 |
|
|
Wersja Lo-Fi | Aktualny czas: 10.05.2024 - 00:29 |