Страница 3 из 3

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Ср Май 13, 2015 19:58
aivt
arbeiten писал(а):Ваше сугубо личное мнение не подтвержденное фактами. Я не предлагаю сделать "как все", я предлагаю дать пользователям возможность выбора. Чувствуете разницу?


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

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Пн Май 18, 2015 15:14
arbeiten
Решил вопрос наполовину :D Осталось добавить в настройки выходной формы.

Скрипт, добавляем в файл: Main.xls

Перед редактированием файла Main.xls сделайте резервную копию!

Как добавить макрос: http://moonexcel.com.ua/macros_ru


Плюшки после применения:
1. Верхний отступ увеличен до 20мм
2. Убирается выделением курсивом отдельных строк.
3. Удаляются "лишние" страницы.
4. Переименование страницы со сметой в "ТСН-2001".
5. Файл будет сохранен по следующему адресу: C:\Экспорт в формате XLSX.


Сам макрос:

Код: Выделить всё
Sub LITE_PA3MEP()

' LITE_PA3MEP Макрос
'
' Сочетание клавиш: Ctrl+x
'

    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$30:$30"
        .PrintTitleColumns = ""
    End With
    Application.PrintCommunication = True
    ActiveSheet.PageSetup.PrintArea = ""
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .LeftHeader = "&8"
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = "&P"
        .LeftMargin = Application.InchesToPoints(0.393700787401575)
        .RightMargin = Application.InchesToPoints(0.196850393700787)
        .TopMargin = Application.InchesToPoints(0.78740157480315)
        .BottomMargin = Application.InchesToPoints(0.393700787401575)
        .HeaderMargin = Application.InchesToPoints(0.196850393700787)
        .FooterMargin = Application.InchesToPoints(0.196850393700787)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = 60
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = ""
        .EvenPage.CenterHeader.Text = ""
        .EvenPage.RightHeader.Text = ""
        .EvenPage.LeftFooter.Text = ""
        .EvenPage.CenterFooter.Text = ""
        .EvenPage.RightFooter.Text = ""
        .FirstPage.LeftHeader.Text = ""
        .FirstPage.CenterHeader.Text = ""
        .FirstPage.RightHeader.Text = ""
        .FirstPage.LeftFooter.Text = ""
        .FirstPage.CenterFooter.Text = ""
        .FirstPage.RightFooter.Text = ""
    End With
    Application.PrintCommunication = True
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$30:$30"
        .PrintTitleColumns = ""
    End With
    Application.PrintCommunication = True
    ActiveSheet.PageSetup.PrintArea = ""
    Application.PrintCommunication = False
    With ActiveSheet.PageSetup
        .LeftHeader = "&8"
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = "&""GOST type B,Standard""&P"
        .LeftMargin = Application.InchesToPoints(0.393700787401575)
        .RightMargin = Application.InchesToPoints(0.196850393700787)
        .TopMargin = Application.InchesToPoints(0.78740157480315)
        .BottomMargin = Application.InchesToPoints(0.393700787401575)
        .HeaderMargin = Application.InchesToPoints(0.196850393700787)
        .FooterMargin = Application.InchesToPoints(0.196850393700787)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = 60
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = ""
        .EvenPage.CenterHeader.Text = ""
        .EvenPage.RightHeader.Text = ""
        .EvenPage.LeftFooter.Text = ""
        .EvenPage.CenterFooter.Text = ""
        .EvenPage.RightFooter.Text = ""
        .FirstPage.LeftHeader.Text = ""
        .FirstPage.CenterHeader.Text = ""
        .FirstPage.RightHeader.Text = ""
        .FirstPage.LeftFooter.Text = ""
        .FirstPage.CenterFooter.Text = ""
        .FirstPage.RightFooter.Text = ""
    End With
    Application.PrintCommunication = True
    Cells.Select
    Selection.Font.Italic = True
    Selection.Font.Italic = False
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Sheets(Array("Source", "SourceObSm", "SmtRes", "EtalonRes")).Select
    Sheets("EtalonRes").Activate
    Application.CutCopyMode = False
    Application.DisplayAlerts = False
    Application.DisplayAlerts = False
    ActiveWindow.SelectedSheets.Delete
    Sheets("Смета по ТСН-2001").Select
    Sheets("Смета по ТСН-2001").Name = "ТСН-2001"
           
    ActiveWorkbook.SaveAs Filename:="C:\Экспорт\00. " & [A17] & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False  ' xlOpenXMLWorkbook = формат XLSX
    Range("G11").Select

End Sub


Пожелания и предложения приветствуются :wink:

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Вт Май 19, 2015 10:34
Orlinka
Вот сколько не читаю форум смета.ру, очень многие предложения сразу же воспринимаются в штыки. Даже и предлагать ничего не хочется, если в ответ часто одно: программа работает - работает, не нравится как работает - покупайте другую, и вообще вы от конкурентов. Честно говоря, странно, что рациональные советы так воспринимаются. Я просматриваю темки здесь часто, и хочу поддержать г-на arbeiten за то, что он не ленится сообщать о том, что можно улучшить в смета.ру. Сразу для справки: я рядовой пользователь, на конкурентов не работала и не собираюсь, волею судеб работала в трех программах, и вижу, что смета.ру не хватает многих "фишек" для удобства. То, что обсуждается в этой теме, нужно, например, и мне, о чем я писала на первой странице, но разработчики уже на трех листах пытаются убедить г-на arbeiten, что это нужно ему и только ему. Вношу свой голос: мне тоже это нужно, причины уже описывала. Спасибо.

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Вт Май 19, 2015 12:26
Mikle
Orlinka писал(а):... но разработчики уже на трех листах пытаются убедить г-на arbeiten, что это нужно ему и только ему. Вношу свой голос: мне тоже это нужно, причины уже описывала. Спасибо.

В том то и дело что не только разработчики. Например aivt является дилером и выражает мнение целого региона, количество пользователей в котором измеряется наверное уже четырехзначной цифрой.
aivt писал(а):Ни один из моих реальных клиентов ни когда не жаловался на большой размер файлов...


Тем не менее не надо думать что Ваше мнение никому не интересно. Мы думаем над возможностями решения данной проблемы. Вот только приоритет этой задачи не настолько высок чтобы ради ее решения забросить текущие разработки.
И если Вы обратили внимание, то большинство сообщений arbeiten в последнее время после проверки заносятся в план работ. Например, ошибка при вставке подчиненной строки (не пересчитываются итоговые ПЗ, а как следствие - лимитированные) на мой взгляд гораздо более важна и должна быть исправлена в первую очередь.

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Вт Май 19, 2015 14:13
Orlinka
Mikle писал(а):Мы думаем над возможностями решения данной проблемы. Вот только приоритет этой задачи не настолько высок чтобы ради ее решения забросить текущие разработки.

Я так понимаю, что решение этой задачи как-раз таки довольно просто решается небольшим макросом, который выше привел arbeiten, может быть, такого рода небольшие задачи целесообразнее решать все-таки по ходу работы, сделал и забыл, что называется?

И еще ремарка по поводу "никто не жалуется...", может быть, людям не с чем сравнивать? Мой папа тоже, знаете ли, на жигули особо не жаловался, пока на иномарку не пересел :mrgreen:

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Ср Май 20, 2015 14:06
arbeiten
Таки допилил. Скачивайте вложенный файл Main.xls с интегрированным макросом.

Важно! Сделайте предварительно резервную копию оригинального файла отсюда: StroySoft\Smeta.ru\Client\ExcelShabl

Установка: просто заменить оригинальный файл правленным )
Создайте папку на диске С "Экспорт"!

Плюшки после применения:
1. Верхний отступ увеличен до 20мм
2. Убирается выделением курсивом отдельных строк.
3. Удаляются "лишние" страницы.
4. Переименование страницы со сметой в "ТСН-2001".
5. Файл будет сохранен по следующему адресу: C:\Экспорт в формате XLSX.

После экспорта файла нажимаете горячую клавишу для активации макроса: Ctrl+M.
Открываем папку C:\Экспорт. Радуемся! :D

ЗЫ Благодарность aivt за идею.

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Чт Май 21, 2015 15:12
Orlinka
arbeiten, спасибо! Пригодится :D

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Пт Май 22, 2015 8:35
Timur
arbeiten писал(а):Таки допилил. Скачивайте вложенный файл Main.xls с интегрированным макросом.

Хочу заметить, что необходимо указать для какой версии подходит данный файл. Т.к. использование main.xls из разных версий может привезти к нерабочему состоянию формирование документов. Другими словами, необходимо получить новую версию файла от arbeiten с выходом нового патча.

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Пн Май 25, 2015 18:47
aivt
arbeiten, я же вам сразу предлагал в отдельный файл, из-за того, что поместили свой макрос в Main.xls возникает проблема, на которую вам указал Timur.
Если отдельным файлом пользоваться правда возникает другая проблема - необходимо перед использованием открывать ваш файл в котором лежит ваш макрос.
Но это можно сделать прописав открытие вашего файла в Main.xls (после формирования всех документов).

Думаю если очень хорошо попросите, то Timur выполнит для вас одно "желание", а я вам помогу его сформулировать...
В общем из того как развивается ситуация необходимо сейчас добавить в "стандартный" Main.xls
пару строк, которые будут проверять наличие в папке ExcelShabl файла plugins.xls и если он существует то открывать его после (или до) формирования документов, а также закрывать его (если был открыт) при закрытии Main.xls ... как то так...

Пользователи arbeiten или aivt может быть разместят в файле plugins.xls свои макросы и не будут их добавлять в Main.xls, что решит описанную выше проблему (не совместимость версии Main.xls и программы Smeta.ru)

В дальнейшем пользователь arbeiten или aivt (пожелавшие поделиться своими макросами) прикладывают свой файл plugins.xls, описывают как работает и указывают как запустить.

Остальные пользователи скачивают plugins.xls, копируют в папку ExcelShabl и в результате могут пользоваться этими макросами...

В общем если мое мнение хоть что нибудь значит, то я прошу это реализовать - будет полезно и для arbeiten и для aivt и доя многих других пользователей.

arbeiten писал(а):ЗЫ Благодарность aivt за идею.


Я такой фигней уже 15 лет занимаюсь :)
В результате переписал ВСЕ макросы ВЗАМЕН поставляемых в комплекте с программой и "стандартными" не пользуюсь :)
У вас смотрю начало положено - лет через 15 догоните :)

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Пн Май 25, 2015 19:48
aivt
Orlinka писал(а):Вот сколько не читаю форум смета.ру, очень многие предложения сразу же воспринимаются в штыки. Даже и предлагать ничего не хочется, если в ответ часто одно: программа работает - работает, не нравится как работает - покупайте другую, и вообще вы от конкурентов. Честно говоря, странно, что рациональные советы так воспринимаются. Я просматриваю темки здесь часто, и хочу поддержать г-на arbeiten за то, что он не ленится сообщать о том, что можно улучшить в смета.ру. Сразу для справки: я рядовой пользователь, на конкурентов не работала и не собираюсь, волею судеб работала в трех программах, и вижу, что смета.ру не хватает многих "фишек" для удобства. То, что обсуждается в этой теме, нужно, например, и мне, о чем я писала на первой странице, но разработчики уже на трех листах пытаются убедить г-на arbeiten, что это нужно ему и только ему. Вношу свой голос: мне тоже это нужно, причины уже описывала. Спасибо.


Все не так плохо как кажется - все намного хуже !
Если бы вы знали как трудоемко МНЕ "проталкивать" свои предложения ... пожалуй легче свою программу написать если приложить всю потраченную энергию в другое русло...
Но тем не менее этому есть причина ... Программа Smeta.ru - коробочное решение, поэтому когда что-либо хочется поменять одному пользователю - это затрагивает интересы других пользователей, которым это не надо и вредно. Поэтому когда я что-либо предлагаю, то мне приходится делать акцент на то, что от этого по крайней мере ни кому хуже не будет, для остальных ничего не изменится... это вам намек как можно реализовать ваши пожелания :)

Re: Решено. Как убрать связи в экспортируемых сметах.

СообщениеДобавлено: Ср Май 27, 2015 11:14
Orlinka
aivt, спасибо, отличный намек :D