Показать полную графическую версию : [решено] помогите правильно подтянуть формулу
есть формула
=СРЗНАЧ(C2:C46)
когда я её тяну вниз то она изменяется так
=СРЗНАЧ(C3:C47)
а можно сделать, чтобы когда её тянешь вниз она принимала такой вид
=СРЗНАЧ(d2:d46)
Нет. Вы ведь вниз тянете, а не вправо.
Что за документ такой интересный? Можете приложить?
vanoman, где-то похожий эффект будет, если дополнительно ввести столбик со значением смещения (в примере рядом со средним значением слева, в принципе - его можно в любом месте можно разместить) и использовать функцию "смещ". Ссылки на диапазон должны быть абсолютными (со знаками $). Из минусов - ссылаться каждая ячейка все равно будет на C2:C46, т.е. сама формула разумеется меняться не будет.
=СРЗНАЧ(СМЕЩ($C$2:$C$46;0;B49))
Iska, a_axe,
смотрите, вот файл
надо, чтобы когда тянешь вниз, значения по ячейкам изменялсь так
Столбец С2
сейчас
=лист1!$B$1
надо, чтобы когда потянул вниз стало
=лист1!$C$1
столбец d2
сейчас
=СРЗНАЧ(лист1!B2:B46)
надо чтобы был
=СРЗНАЧ(лист1!с2:с46)
столбец е2
сейчас
=СРЗНАЧ(лист1!B47:B69)
надо чтобы был
=СРЗНАЧ(лист1!с47:с69)
столбец f2
=(D2-E2)/КОРЕНЬ(((45-1)*(СТАНДОТКЛОН.В(лист1!B2:B46)^2)+((23-1)*(СТАНДОТКЛОН.В(лист1!B47:B69)^2)))/((45+23-2))*(((1/45)+(1/23))))
надо , чтобы было, когда тянешь вниз
=(D3-E3)/КОРЕНЬ(((45-1)*(СТАНДОТКЛОН.В(лист1!с2:с46)^2)+((23-1)*(СТАНДОТКЛОН.В(лист1!с47:с69)^2)))/((45+23-2))*(((1/45)+(1/23))))
столбец g2
=СТАНДОТКЛОН.В(лист1!B2:B46)
ну понятно нужно, чтоб стал
=СТАНДОТКЛОН.В(лист1!с2:с46)
vanoman, я ж написал — так, как Вы описываете, не выйдет. Будете тянуть вниз — формулы будут корректироваться именно с учётом направления «вниз», а не как-то иначе.
А если Вам транспонировать данные на «лист1», а?
a_axe, чуть-чуть не дожал :). Не нужно возиться с доп. столбцом.
vanoman, замените в ваших формулах
лист1!B2:B46 на
СМЕЩ(лист1!$A$1;1;СТРОКА(A1);45;)
и лист1!B47:B69 на
СМЕЩ(лист1!$A$1;46;СТРОКА(A1);23;)
и тяните на здоровье
Iska, это вы не поняли мою идею. Например с поправками okshef, все он тянет и все высчитывает как надо)
только такой вопрос
45 это кол-во единиц
а 23 кол-во двоек, так группы мои поделились
если там единиц будет 100, а двоек 90 Формулы будут так идти?
СМЕЩ(лист1!$A$1;1;СТРОКА(A1);100;)
СМЕЩ(лист1!$A$1;46;СТРОКА(A1);90;)
А в идеале(я об этом и не прошу)
вот в формуле
=(D3-E3)/КОРЕНЬ(((45-1)*(СТАНДОТКЛОН.В(СМЕЩ(лист1!$A$1;1;СТРОКА(A2);45;))^2)+((23-1)*(СТАНДОТКЛОН.В(СМЕЩ(лист1!$A$1;46;СТРОКА(A2);23;))^2)))/((45+23-2))*(((1/45)+(1/23))))в этом месте КОРЕНЬ(((45-1) вместо 45 стояло кол-во единиц
здесь
2)+((23-1)*(СТАНДОТКЛОН.В(С здесь вместо 23 стояло реально кол-во двоек
в этом тоже самое
/((45+23-2))*(((1/45)+(1/23))))вместо 45 реально кол-во единиц, а вместо 23 реальное кол-во двоек
потому что кол-во единиц и двоек каждый раз разное
Нет. Справка к формуле СМЕЩ гласит
СМЕЩ(ссылка; смещ_по_строкам; смещ_по_столбцам; [высота]; [ширина])
используем СЧЁТЕСЛИ(Лист1!$A:$A;1) для 1 и СЧЁТЕСЛИ(Лист1!$A:$A;2) для 2
В итоге конечные формулы приобретают вид:
По 1
СМЕЩ(лист1!$A$1;1;СТРОКА(A1);СЧЁТЕСЛИ(Лист1!$A:$A;1);)
По 2
СМЕЩ(лист1!$A$1;СЧЁТЕСЛИ(Лист1!$A:$A;1)+1;СТРОКА(A1);СЧЁТЕСЛИ(Лист1!$A:$A;2);)
Но учтите, что
при добавлении строк сверху во второй формуле нужно менять СЧЁТЕСЛИ(Лист1!$A:$A;1)+1 1 на количество строк
1 должны идти перед 2 (как сейчас)
1 и 2 не должны перемешиваться
А в идеале(я об этом и не прошу) »
я ответил
Iska, это вы не поняли мою идею. Например с поправками okshef, все он тянет и все высчитывает как надо) »
Я Вашу идею вполне понял. И повторю ещё раз: пересчёт относительных ссылок в формулах при протаскивании происходит строго в направлении протаскивания.
И с выкладками коллеги okshef — точно так же, ничего не изменилось ;). Вы же видите, как это происходит — за счёт индексов. Я и не сомневался, что кто-нибудь предложит Вам обходной путь, потому и прошу всегда выкладывать образцы документов.
okshef, что-то на практике это плохо получается гляньте, плизз
у меня только ссылка выходит
Я просто не такой профессионал в экселе
Простите, не учел, что формулы на 2-м листе. Добавьте Лист1! перед $A:$A
Формулы поправил.
да, теперь верно
самая главная формула у меня выглядит вот так
=(D2-E2)/КОРЕНЬ(((45-1)*(СТАНДОТКЛОН.В(СМЕЩ(лист1!$A$1;1;СТРОКА(A1);СЧЁТЕСЛИ(лист1!$A:$A;1);))^2)+((23-1)*(СТАНДОТКЛОН.В(СМЕЩ(лист1!$A$1;СЧЁТЕСЛИ(лист1!$A:$A;1)+1;СТРОКА(A1);СЧЁТЕСЛИ(лист1!$A:$A;2);))^2) ))/((45+23-2))*(((1/45)+(1/23))))
Вы точно уверены, что в эти места ничего не прописать, что они автоматически подставляли цифры?
vanoman, я думал вы догадаетесь, и сами замените. Можно, конечно.
okshef, сорьки, я не самый тут крутой спец. мне сложно пока столь большими формулами манипулировать. Может покажете)
45 замените на СЧЁТЕСЛИ(Лист1!$A:$A;1)
23 - на СЧЁТЕСЛИ(Лист1!$A:$A;2)
okshef, а как сделать, чтобы, когда тянешь вниз b1 стало с1, то есть мне нужно , чтобы в этом документе, на втором листе в ячейке с2 отображалось слово ,которое стоит в ячейке b1 на листе1, в ячейке с3 второго листа стояло слово, которое стоит в ячейке с1 первого листа. Там всего 6 фраз ,6 переменных, но там потом их будет 200. Я просто не хочу во втором листе механически называть ячейки.
Аналогично, тоже с помощью индексов:
=ИНДЕКС(лист1!$B$1:$G$1;1;СТРОКА(A1))
Формула для вашего файла, диапазон лист1!$B$1:$G$1 нужно будет расширить до реального.
Друзья, великодушно прошу мне ещё помочь.:)
Помогите, пожалуйста вбить исчисление ,но при помощи вба. в этом файле. Например, ячейка b72 и b73 надо, чтобы именно через vba высчитывалась эта формула
в ячейке b74 =количество единиц * кол-во двоек (из столбца А)-b72+кол-во единиц*(кол-во единиц+1)/2 = 45*23-1394+45(45+1)/2=676
в ячейке b75 =количество единиц * кол-во двоек (из столбца А)-b73+кол-во двоек*(кол-во двоек+1)/2=45*23-952+23*(23+1)/2=359
Ну, с учетом того, что в будущем в этом файле будут сотни чисел. и значения могут быть и в ячейке b172 и так далее.
при помощи вба »
чем вызвана необходимость использовать именно VBA?
формулами задача решается достаточно просто:
вбейте в b74 формулу
"=СЧЁТЕСЛИ(A2:A69;1)*СЧЁТЕСЛИ(A2:A69;2)-B72+СЧЁТЕСЛИ(A2:A69;1)*(СЧЁТЕСЛИ(A2:A69;1)+1)/2"
в b75 формулу
"=СЧЁТЕСЛИ(A2:A69;1)*СЧЁТЕСЛИ(A2:A69;2)-B73+СЧЁТЕСЛИ(A2:A69;2)*(СЧЁТЕСЛИ(A2:A69;2)+1)/2"
Соответственно, если данных станет больше, нужно заменить в формулах диапазон "A2:A69" на фактический.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.
Available in ZeroNet 1osznRoVratMCN3bFoFpR2pSV5c9z6sTC