Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Потеря точности при работе в VBA
 
Есть проблема.  
 
В программе формирования Счета на VBA вычисляется    
сумма перемножением цены (470.42 р)на количество 1.38.  
Получается 651.35 р.(лист Счет)  
И это неправильно, т. к. при проверке на    
калькуляторе, да и в самом Excele (см. Лист1)  
получается (470.42* 1.38 = 649.18)  
 
При этом, если в бланк Счет в программе    
вручную вбить исходные данные (470.42 и 1.38)  
и написать формулу перемножения (как в Лист1)  
все равно произведение получается неверным, т.е.651.35  
 
Пробывал изменить типы полей - не помогает.  
В декларациях задания типов данных  DIM в программе  
использовал Variant для переменных и Integer  для индексов
Мелькание экрана
 
{quote}{login=Юрий М}{date=18.11.2010 04:04}{thema=}{post}Примерно так:  
With Worksheets("Лист2")  
Worksheets("Лист1").Range("A1:P" + Trim(CStr(Nzap))).Copy  
.Range("A1").PasteSpecial  
 
Worksheets("Лист1").Range("E" & Trim(CStr(Nzp + 21))).Copy  
.Range("E" & Trim(CStr(Nzp + 21))).PasteSpecial Paste:=xlPasteValuesAndNumberFormats  
 
Worksheets("Лист1").Range("A" & Trim(CStr(Nzp + 29))).Copy  
.Range("A" & Trim(CStr(Nzp + 29))).PasteSpecial Paste:=xlPasteValuesAndNumberFormats  
End with{/post}{/quote}  
 
 
Спасибо за ответ, но только у меня что-то не получилось.  
Делал вроде все как у вас на примере.  
Мелькание то же, что и у меня.
Мелькание экрана
 
{quote}{login=}{date=18.11.2010 03:50}{thema=}{post}application.screenupdating=false  
код  
application.screenupdating=true{/post}{/quote}  
 
Спасибо, все получилось!!!
Мелькание экрана
 
{quote}{login=Юрий М}{date=18.11.2010 03:53}{thema=}{post}Или использовать конструкцию With - End with{/post}{/quote}  
 
 
Как это?  
Покажите пожалуйста.
Мелькание экрана
 
Выполняется достаточно типовая процедура: из Лист1 копируются некоторые данные и вставляются в Лист2 той же книги, затем из Лист1 копируется еще одна порция данных и опять вставляется в Лист2. и т.д. несколько раз. При этом на экране происходит мелькание (правда достаточно быстро) но тем не менее неприятно.  
 
Как избежать этого мелькания.  
 
Вот фрагмент программы  
 
Worksheets("Лист1").Range("A1:P" + Trim(CStr(Nzap))).Copy  
Worksheets("Лист2").Range("A1").PasteSpecial  
 
Worksheets("Лист1").Range("E" & Trim(CStr(Nzp + 21))).Copy  
Worksheets("Лист2").Range("E" & Trim(CStr(Nzp + 21))).PasteSpecial Paste:=xlPasteValuesAndNumberFormats  
     
Worksheets("Лист1").Range("A" & Trim(CStr(Nzp + 29))).Copy  
Worksheets("Лист2").Range("A" & Trim(CStr(Nzp + 29))).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
копирование и объединение ячеек программой VBA
 
Спасибо, работает.  
Но есть еще одна проблема (последняя ли?)  
Записываю информацию в ячейку, ширина столбца при этом меньше, чем может уместиться в ячейке. Делаю перенос по словам. Все в порядке, высота строки увеличивается и вся информация при этом видна. Но высота строки слишком большая.    
Делаю объединение 2-х соседних ячеек и перенос по словам. Все кончилось. Объединение произошло, высота 2-х объединенных ячеет минимальна и выводится только одна строки информации. Если снимаю объединение - в 1-ой ячейке вся инфа видна, но высота опять очень большая.  
Использую при всех манипуляциях MERGE, AUTOFIT, WRAPTEXT. Ничего не помогпет
копирование и объединение ячеек программой VBA
 
Все заработало!!!  
Большое всем спасибо.  
Действительно, я невнимательно прочел первый ответ webley, поэтому и не пошло.  
 
А как насчет копирования и вставки форматов (выравнивание и т.д)???
копирование и объединение ячеек программой VBA
 
После вставки (Insert) строки таблицы нужно скопировать форматы исходной строки в новую строку и объединить несколько ячеек в этой новой строке.  
Проделал все это макрорекордером - все вроде понятно, но когда пишу программу нужно обойтись без SELECT как при копировании диапазона (RANGE), так и при объединении 3-х ячеек в новой строке.  
Что-то не получается. Просмотрел Help VBA в Excel, там написано, нобез примеров.  
 
Помогите, плиз!!!
отрисовка границы для группы ячеек
 
{quote}{login=Казанский}{date=21.10.2010 12:55}{thema=}{post}Если программно, то зачем Select?  
Worksheets("Лист3").Range("A1:C5").Borders.LineStyle = xlContinuous{/post}{/quote}  
 
Спасибо, заработало!!!
Печать многостраничного документа средствами VBA
 
Спасибо.
отрисовка границы для группы ячеек
 
Есть задача:  
 
На листе 3 книги Excel формируется документ "Накладная".  
Информация для документа вводится через форму с листа 1.    
Лист 1 с формой  является активным и находится перед пользователем.  
После завершения ввода необходимо отрисовать границы для группы ячеек накладной,  
находящейся на лист 3. Для этого я выделяю эту группу ячеек напр. Range (A1:C5).Select  
и границы отрисовываются.    
Но проблема в том, что Лист 3 для метода Select должен быть активным,    
т.е. надо сделать   Worksheets("Лист3").Activate  
При этом он появляется на экране вместо лист1, а это не нужно.  
Необходимо остаться на листе 1.    
 
Как можно отрисовать границы без появления лист 3 (накладная) на экране.
Печать многостраничного документа средствами VBA
 
{quote}{login=}{date=17.10.2010 02:36}{thema=Re: Re: Печать накладной}{post}{quote}{login=}{date=16.10.2010 08:31}{thema=Re: Печать накладной}{post}{quote}{login=GM51}{date=15.10.2010 09:51}{thema=Печать накладной}{post}ворпосы  
 
-накладная типа торг-12, м15,счета-фактуры?  
-в ширину листа а4  
-есть ли итоги по листу{/post}{/quote}  
 
 
Да. имеено это{/post}{/quote}  
я печатаю через ворд  
образцы исходных данных и формы печати не приложите?{/post}{/quote}  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
Печать многостраничного документа средствами VBA
 
Проблема в том, что распечатать нужно  
программой, а не в Excel
Печать многостраничного документа средствами VBA
 
Есть такая, наверняка известная, задача:  
необходимо распечатать многостраничный документ (накладная)с листа Excel  отформатированного по ширине, но при выводе на печать занимающего несколько страниц.    
Каждую страницу нужно начинать с шапки, строки таблицы разрывать нельзя.  
Как подойти к решению задачи?  
Как определить границы документа и сопоставить с границами бумаги?  
Где можно почитать,посмотреть?  
Как то не нашел ответа на форумах  
Подскажите, плиз.
Сохранение ширины и высоты ячеек при копировании таблицы
 
При копировании таблицы з заданными величинами ширин столбцов и высот строк  
с параметрами копирования    
Selection.PasteSpecial Paste:=xlPasteColumnWidths, и т.д.  
или    
Selection.PasteSpecial Paste:=xlPasteAll, и т.д.  
 
на лругой лист книги ширины и высоты столбцов не сохраняются  
 
Excel 2007  
 
Как решить проблему???
сохранение листа Excel в файле
 
Спасибо, все работает!!! оОчень помогли!
сохранение листа Excel в файле
 
Здравствуйте!  
Есть проблема: при сохранении в Excel 2007 листа книги в виде файла конструкцией GetSaveAsFilename лист сохраняется, но в Excel 2003 файл не открывается и нее читается. Как решить этот вопрос? И еще, как можно сохранить в файле не весь лист, а выделенный диапазон.  
 
Спасибо
дубликаты данных
 
СПАСИБО! Все работает
дубликаты данных
 
Просьба помочь. Есть таблица из 2-х столбцов с числовой информацией. В любую свободную ячейку любого столбца вводится число. Необходимо выяснить есть ли еще в какой либо ячейке любого из столбцов такое же число. Нужна формула. Макрос не устраивает.
Страницы: 1
Наверх