Столбец с разделителями для получения таких деталей, как дата и время - PullRequest
0 голосов
/ 06 января 2020

Мне нужно разделить столбец, чтобы получить такие данные, как дата и время, на основе пробела и точки с запятой (;).

Когда я делаю это вручную и проверяю код ASCII (Код = значение ячейки) для Дата, это 52, который можно проверить на первом листе.
enter image description here

Когда я делаю это с помощью макроса, значение даты ASCII изменяется на 49 ( макрос находится на втором листе). Даже после изменения формата даты ничего не происходит.
enter image description here

Цель упражнения состоит в том, чтобы автоматически разграничить, а затем сравнить даты в другом Excel "X" которые в формате, как "16-09-2019". Из-за автоматического изменения значения ASCII две даты (которые находятся на двух разных листах) не совпадают.

Код, созданный мной при записи макроса:

Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
    TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=True, _
    Semicolon:=True, Comma:=False, Space:=True, Other:=False, FieldInfo:=_
    Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5,_ 
    1),Array(6, 1), Array(7, 1), Array(8, 1), Array(9, 1), Array(10,_ 
   1)),TrailingMinusNumbers:=True

1 Ответ

0 голосов
/ 06 января 2020

Чтобы закрыть этот вопрос:

Укажите, что столбец A фактически является датой; см. документы Range.TextToColumns и перечисление XlColumnDataType. xlDMYFormat (формат даты DMY) равно 4.

FieldInfo:=Array(Array(1, 4)...

You может потребоваться изменить типы данных и для других столбцов.

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