Вот примеры файлов. В исходнике все данные сохранены в текстовом ормате ( все цифровые значения) слева, у меня получается, что даты, время и номер сохраняются в числовом формате (справа).
В документе есть формулы, форматы на листе поменять не могу, выгружаю на отдельный лист макросом.
Подскажите, как можно, после вычислений преобразовать все в текст и выгрузить на отдельный?
Код |
---|
Sub convert_and_copy()
' Объявляем переменные
Dim wbSource As Workbook
Dim wsSource As Worksheet
Dim rngSource As Range
Dim wbTarget As Workbook
Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
' Устанавливаем исходный файл и лист
Set wbSource = ThisWorkbook
Set wsSource = wbSource.Sheets("Лист6") ' Замените на имя вашего листа
Set ws = ThisWorkbook.Sheets("Лист6") 'Замените на имя вашего листа
Set rng = ws.Range("G2:H19000") 'Замените на нужный вам диапазон
For Each cell In rng
cell.NumberFormat = "dd.mm.yyyy HH:mm:ss" 'Замените формат даты и времени на желаемый
cell.Value = cell.Value
Next cell
Set rng = ws.Range("I2:I19000") 'Замените на нужный вам диапазон
For Each cell In rng
cell.NumberFormat = "HH:mm:ss" 'Замените формат времени на желаемый
cell.Value = cell.Value
Next cell
' Выделяем диапазон ячеек, который нужно скопировать
Set rngSource = wsSource.Range("B1:O19000") ' Выделяем диапазон
' Создаем новый файл Excel
Set wbTarget = Workbooks.Add
' Копируем исходный диапазон в новый файл
rngSource.Copy Destination:=wbTarget.Sheets(1).Range("A10")
End Sub
|