|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.04.2009, 15:59 | #1 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
Трабла с переносом данных...
В общем то такое дело:
При переносе данных с нескольких листов в один посредством вот такой функции: Private Sub KB2_Click() Application.ScreenUpdating = False: On Error Resume Next KB1_Click Dim sh As Worksheet, r As Range, ra As Range, dat As Range Set dat = Cells.Range("a1") For Each sh In ThisWorkbook.Worksheets If sh.Name Like Not "*Свод*" Then For Each cell In sh.Range("f:f").SpecialCells(xlCell TypeConstants).Cells If cell <= dat Then Set ra = Intersect(cell.EntireRow, sh.Range("a:ah")) ra.Copy Me.Range("a65000").End(xlUp).Offset (1).PasteSpecial xlPasteValues End If Next cell End If Next sh Me.[a1].Select Application.CutCopyMode = False End Sub Напроч изменяються форматы данных, что переносяться, причем в хаотичном порядке. Интересно - кто то сталкивался с таким несчастьем аль нет? А если сталкивался то - ПАМАГЫТЕ Плиииз....
Египетский бог Сет отвечал за переменные окружения.
|
23.04.2009, 16:06 | #2 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Код:
Ну или просто в строке Me.Range("a65000").End(xlUp).Offset (1).PasteSpecial xlPasteValues уберите xlPasteValues (или замените на xlPasteAll) |
23.04.2009, 16:37 | #3 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
Фигня получилася - вставляет хаотический вариант форматов в любом варианте
Может посмотрите в файлике? юзер admin пароль 000 пароль на проект 111111 А ... лист - "свод"
Египетский бог Сет отвечал за переменные окружения.
Последний раз редактировалось winfacks; 23.04.2009 в 17:02. |
23.04.2009, 16:44 | #4 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
а еще похоже надо как то буфер обмена очищать ... он все валит в ексель Даже мое общение по аське туды пошло (скопировал в буфер серед нажмакать кнопку на обновление данных)
Египетский бог Сет отвечал за переменные окружения.
|
23.04.2009, 16:50 | #5 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Мой конвертер форматов не смог открыть Ваш файл.
Возьмите за правило выкладывать файлы в формате Excel 2003 Цитата:
При правильно организованном копировании диапазонов ячеек использование буфера обмена требуется крайне редко. |
|
23.04.2009, 17:00 | #6 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
Тисяча извинениев многоуважаемый Сенсей, Переконвертил
Египетский бог Сет отвечал за переменные окружения.
|
23.04.2009, 17:32 | #7 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Может, попробуете так:
Код:
Так и не понял, что требуется - копировать вместе с форматами, или наоборот - без форматов? Цитата:
(какой формат был до запуска макроса, и какой - после) |
|
23.04.2009, 17:47 | #8 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
Попробовал последний вариант.
Сделал сбор данных (нажамкал на княпочку) и... Почему то в столбец (допустим R - "сумма акта") перенеслись значения числа как в варианте текста, числовом , так и в варианте дата-время Хотя в исходных данных такого нет Так не совсем красиво обьяснить получаеться - видеть надо Ну и по остальным столбцам с цифрами тоже бардак тот же
Египетский бог Сет отвечал за переменные окружения.
Последний раз редактировалось winfacks; 23.04.2009 в 17:51. |
23.04.2009, 18:08 | #9 |
Пользователь
Регистрация: 25.04.2008
Сообщений: 33
|
все - ушел стреляться, приду с дыркой в башке минут через 7
Египетский бог Сет отвечал за переменные окружения.
|
23.04.2009, 18:12 | #10 | |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,856
|
Цитата:
А вообще, я не знаю, как решить вашу проблему. В таких случаях я обычно считывал диапазон в массив, в цикле для отдельных столбцов массива производил замену запятой на точку, и т.д., и только потом записывал массив на лист. В итоге добивался результата, но как-то это всё неправильно. Наверняка есть более простой способ, но мне он неизвестен. Могу лишь предложить в качестве решения ручное копирование ячеек (по одной) Долго, но зато работает... Может, другие форумчане подскажут решение? |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сортировка списка_с переносом на Листы. | anridka | Microsoft Office Excel | 2 | 19.02.2009 09:09 |
Траблы с переносом сайта | Diman2008 | HTML и CSS | 4 | 18.10.2008 21:36 |
Проблема с переносом БД на другой комп | HAMMAN | Помощь студентам | 3 | 16.05.2008 10:52 |
? Помогите с переносом данных по условию | Ural-666 | Microsoft Office Excel | 3 | 29.11.2007 22:54 |