Форум на Kuban.ru (http://forums.kuban.ru/)
-   Использование программ (http://forums.kuban.ru/f1025/)
-   -   Как заполнить ячейки таблицы при известных суммах ячеек по вертикали и горизонтали? (http://forums.kuban.ru/f1025/kak_zapolnit-_yachejki_tablicy_pri_izvestnyh_summah_yacheek_po_vertikali_i_gorizontali-2781993.html)

rusk1234 02.07.2012 09:03

Как заполнить ячейки таблицы при известных суммах ячеек по вертикали и горизонтали?
 
Как заполнить ячейки таблицы при известных суммах ячеек по вертикали и горизонтали и необходимом количестве заполняемых ячеек по горизонтале равном количестве отработанных дней округленном в большую сторону до целого числа? [url]http://files.mail.ru/BMGJJ6[/url]

NikLukovskiy 03.07.2012 20:06

Не совсем понятно ваше задание. Что в итоге вы хотите увидеть?

Технолог 03.07.2012 20:32

[em]Что в итоге вы хотите увидеть?[/em]
Видимо надо заполнить табель рабочего времени задним числом...

NikLukovskiy 03.07.2012 21:40

Так тогда надо хотя бы понимать кто в какой день в этом месяце работал (цветом в таблице. Тогда можно высчитать среднее значение кол-ва картошки в день). Два человека в день - одно кол-во. Три человека, тогда на троих объем за день.

economist 04.07.2012 09:57

Нерабочие дни можно отметить знаком -
И тогда формула

=ОКРУГЛ(AJ4/(31-СЧЁТЕСЛИ(E4:AI4;"-"));0)

даст искомое. Однако эту формулу придется разместить в пустой строке ниже имеющейся - иначе возникнет циклическая ссылка. Также следует помнить что
4,5+4,5=9 а округленные 5+5=10<>9! Ошибюка округления должна быть где-то убрана. Лучше всего в плане бухучета - не округлять ячейки, а сменить им формат на Числовой без знаков после запятой. Ни один ревизор не сможет доказать крамолу по поводу невидимых долей единицы, есть даже соответственное письмишко Минфина. Ошибка при этом минимальна, т.е. люди увидят 5+5=9.

economist 04.07.2012 09:59

Поправочка, что бы формула легко копировалась на другие строки ячейки - надо "закрепить" абсолютными сслыки на столбцы:

=ОКРУГЛ($AJ4/(31-СЧЁТЕСЛИ($E4:$AI4;"-"));0)

rusk1234 04.07.2012 18:17

А все-таки, кто-нибудь может представить решенный файл, чтобы сумма итогов по столбцам равнялась сумме итогов по строкам

Цац 04.07.2012 19:25

А как в книге с сотней листов макросом очистить все ячейки, содержащие один пробел? Не привязываясь к именам листов и их количеству

economist 05.07.2012 09:16

Цац - как обычно: записать макрос. Открыть его, поправить. Использовать.
...
Sub ReplaceAnyCellsAnySheetsContetntSPACEWithEmpty()
' Заменить любую ячейку всей книги с пробелом на пустоту (c)economist
Dim ans
ans = MsgBox("Очистить ВСЕ ячейки Книги с пробелом?", vbYesNo)
If ans = 6 Then Cells.Replace What:="* *", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End Sub

economist 05.07.2012 10:04

rusk1234 - готовый только за 300рэ :-)) Дел на пятнадцать минут. Будет большая красивая кнопка, которая поставит значения и все будет в ажуре.

economist 05.07.2012 11:12

Впрочем нет, эта интересная задача в условиях нехватки времени стоит 300 уе :-))

Дело в том, что она задача имеет не одно, а множество решений, а значит нужны матричные итеративные вычисления, либо линейное программирование. Для простого случая, когда все дни рабочие, правильная матрица заполняется просто:

Sub MatrixFiller()
' По итогам заполняет матрицу
For Each fio In Range("C4:C17")
For col = 6 To 36
If Cells(fio.Row, col).Value <> "-" Then Cells(fio.Row, col).Value = Cells(fio.Row, 37).Value / (31 - Cells(fio.Row, 5).Value)
Next col
Next fio

' подравняли дни
For col = 6 To 36
If Cells(19, col) <> 0 Then
Cells(20, col).Copy
Range(Cells(4, col), Cells(17, col)).PasteSpecial Paste:=xlPasteAll, Operation:=xlMultiply, SkipBlanks:=False, Transpose:=False
End If
Next col
End Sub

Цац 05.07.2012 18:42

8-economist > О, спасииибо! Кста, а где и что почитать по программированию в экселе? Из стОящего. Никада не занимался, а тут нужда появилась...

economist 05.07.2012 22:13

Цац - самые лучшие и при этом бесплатные учебники по VBA, как и следовало ожидать - от самой Microsoft, завтра выложу ссылку. А вот "находки", трюки и прочее - это конечно консалтеры и преподы в известных университетах на три буквы, там почти все платное, но не всегда. Скажем, каким бы крутым не считал себя "экселист", даже он офигеет от того, что увидит, скажем, на сайте cpearson.com
...
Это высший пилотаж в Excel, причем на 2/3 проблемы решаются вообще без программирования, тупо написание формул. Немного по-английски, но специфика позволяет, в случае чего, успешно воспользоваться [url]http://translate.google.ru/translate?sl=en&tl=ru&js=n&prev=_t&hl=ru&ie=UTF-8&layout=2&eotf=1&u=www.cpearson.com[/url]

economist 18.07.2012 11:27

[url=http://narod.ru/disk/56889128001.5942f2b7f977b5f89c347aad1f58d9e9/%D0%9A%D0%9D%D0%98%D0%93%D0%90.EXCEL.VBA_%D0%A3%D1%87%D0%B5%D0%B1%D0%BD%D0%B8%D0%BA_Microsoft.pdf.html]КНИГА.EXCEL.VBA_Учебник_Microsoft.pdf[/url]

g_krd 18.07.2012 18:44

Хороший сайт [url]http://msexcel.ru/[/url]
Отдельные вещи здесь [url]http://ps-c.narod.ru/ish.html[/url]


Текущее время: 07:39. Часовой пояс GMT +3.