Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Преобразование порядка цифр, в часы минуты секунды кадры
 
Добрый вечер! В столбце А есть порядок цифр, который форматом ячейки "00\:00\:00\:00" преобразовывает их в в часы минуты секунды кадры.
Например:
10163519 это 10:16:35:19
2100 это 00:00:21:00
1123923 это 01:12:39:23
и так далее...
Второй день кручу эксель и не могу понять, как в столбец B эти данные передать в формат ЧЧ:ММ:СС:КК.
Копирование и специальная вставка не помогает :(. Пытался вставлять только значения- все равно не переносит текст "как вижу".
Функция ЛЕВСМВ не помогает- не обнаруживает разделитель ":"
Разбивать текст по столбцам по 1 символу, чтобы потом функцией "СЦЕПИТЬ" не получается, т.к. надо еще определить что не хватает спереди нулей, чтобы получилось 8 символов в строке.
Пробовал экспортировать в текстовый файл функцией:
Код
Sub Кнопка1_Щелчок()
Dim i As Long, s As String
i = Cells(1, 1).End(xlDown).Row     'последняя строка
ReDim arr(1 To i) As String
For i = 1 To UBound(arr)
    arr(i) = Cells(i, 1)
Next i
s = Join(arr, vbCrLf)
Open ThisWorkbook.Path & "\время.txt" For Output As #1      'сохранение
Print #1, s
Close #1
End Sub
Хотел сохранить в текстовик макросом и из него уже импортировать в столбец как нормальный текст- не сохраняет...
Единственное что помогло- копировать столбец в буфер, вставлять в блокнот, копировать из блокнота, вставлять в В столбец. Но это ведь не наш метод уважаемые форумчане :)
не сохраняет значения столбца "как вижу"- сохраняет как порядок цифр.
Подскажите пожалуйста, как можно макросом или функциями решить эту задачу.
Файл для наглядности прилагаю вложением.
Изменено: Владислав - 25 Мар 2015 21:07:45
 
Добрый вечер
Я так понял:
Код
=ТЕКСТ(A1;"00\:00\:00\:00")
 
Что вы хотите получить на выходе?
Код
Sub Владислав()
Dim c As Range, Rn As Range
With Sheets(1)
Set Rn = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
End With
For Each c In Rn
c.Value = c.Text
Next
End Sub


Код
Sub Владислав_1()
Dim c As Range, Rn As Range
With Sheets(1)
Set Rn = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp))
End With
For Each c In Rn
c.Value = Format(c.Value, "00:00:00:00")
Next
End Sub


зы. формат ЧЧ:ММ:СС:К Excel не распознает.

зы.зы. Для оформления кода есть кнопа " <-> "
Изменено: Михаил С. - 25 Мар 2015 19:49:51
 
Цитата
Михаил С. написал:
Что вы хотите получить на выходе?
зы. формат ЧЧ:ММ:СС:К Excel не распознает.

зы.зы. Для оформления кода есть кнопа "  <->  "

Михаил, спасибо Вам огромное! Вы мне помогли существенно автоматизировать ежедневные процессы!
 
Владислав, ответить можно было и без цитирования. А вот на замечание по поводу оформления кода нужно реагировать...
Страницы: 1
Читают тему (гостей: 1)