изменить 2017/2/3 на 2017/02/03

343
abi

У меня есть столбец в Excel, который показывает дату, но не в формате даты, он в текстовом формате, и значения для тех дат, которые имеют один символ для месяца или дня, не содержат ноль перед ними.

Например, у нас есть 2017/1/3 или 2017/11/4, но я хочу изменить их на 2017/01/03 // 2017/11/04.

Как я могу сделать это простым способом без использования формата даты? Вот что я попробовал, это слишком долго и сложно:

  1. разделить дату на год, месяц и дни
  2. если длина месяца <2, добавьте 0 до месяца
  3. если длина дня <2, добавьте 0 до дня
  4. построил новую дату
0
Итак, что не так с результатом того, что вы пытались? Tom Brunberg 5 лет назад 0
@ TomBrunberg это так долго и сложно, я хочу простой способ для этого ... я предпочитаю не разбивать дату abi 5 лет назад 0
Пожалуйста, отредактируйте свой вопрос и добавьте «слишком длинную и сложную» попытку, и кто-нибудь посмотрит, можно ли ее упростить. Tom Brunberg 5 лет назад 1
значение равно «2017/1/3», и вы хотите использовать формулу или макрос? но не = ТЕКСТ ("2017/1/3", "ГГГГ / мм / дд") datatoo 5 лет назад 1

2 ответа на вопрос

1
Roy

Все даты, которые вы используете в качестве примеров, отлично распознаются Excel как даты. Поэтому, если вам нужны «настоящие» даты, которые вы можете форматировать по своему усмотрению и которые Excel может напрямую использовать в математике:

1) Если вы хотите, чтобы исходные данные сохранялись и чтобы были доступны данные о форматируемой дате, просто используйте формулу = A1 * 1 (если ваша дата находится в ячейке A1), где бы вы ни хотели выполнить работу (возможно, через несколько столбцов, или на другой странице ... все, что подходит вашей схеме). И форматируйте по своему усмотрению («гггг / мм / дд» или «гггг / дд / мм» - ваши примеры не дают однозначного выражения, которое, мд или дм, у вас есть).

[Я мог бы добавить, что, хотя это не кажется вам интересным для этой проблемы, что если у вас есть текстовые даты и вы просто хотите использовать их в других формулах, в то время как обычно будет полезно просто ссылаться на них (как в ... A1 +7 ... чтобы получить дату через неделю) в вашей формуле, может быть, будет странный, даже уникальный случай, когда вы сделаете это, и все равно не получится. В этом случае просто выполните это умножение, чтобы приведенный выше пример был бы ... A1 * 1 + 7 ...]

2) Если вы хотите заменить исходные данные «реальными» датами, вы можете переформатировать диапазон дат от «текстового» до пользовательского формата «гггг-мм-дд», а затем ввести «1» в ячейку где-нибудь, скопируйте эту ячейку, снова выберите диапазон дат и вставьте | Special | Multiply. Это преодолевает тот факт, что при переходе от текста к числам Excel никогда не переоценивает эту идею. Для отдельной ячейки, нажав F2 после переформатирования, затем Enter (немедленно, без внесения изменений) сделает то же самое, не обременительно, но если у вас есть 14,293 из этих дат ...

3) Вы также можете получить результат 2) с помощью функции «Текст в столбцы». Просто выберите данные и нажмите «Текст в столбцы», затем выберите «Фиксированная ширина» и поместите маркер ширины линии на «10», а затем, наконец, нажмите «Дата» в качестве формата данных столбца. Нажмите «Готово», и у вас будет готов столбец реальных дат для применения желаемого формата.

Честно говоря, для одноразового использования 3) кажется проще, чем 2), и это происходит "на месте", поэтому оно не нарушает вашу структуру. Но вы не хотели бы делать это каждый раз, когда кто-то добавляет дату, изо дня в день на протяжении многих лет. Имейте в виду, «одноразовое использование» может происходить снова и снова: скажем, вы очищаете свои данные и загружаете новый набор каждую неделю. Тогда 3) не будет индейкой. И его подход будет легче сделать каждый раз записанным небольшим макросом для использования.

Ну, маленький ответ стал крошечным, так что ...

1
Rajesh S

Поскольку ваша Дата в формате TEXT, поэтому я хотел бы предложить вам самый простой способ конвертировать их в Excel Date.

Сделайте следующее:

  1. Введите 0ячейку и скопируйте, или вы также можете скопировать любую пустую ячейку.
  2. Выберите диапазон дат.
  3. Щелкните правой кнопкой мыши и во всплывающем меню выберите « Специальная вставка», затем в опциях « Операция» нажмите « Добавить» и нажмите « ОК» .
  4. Теперь Дата будет выглядеть Числа, т.е. 43322.
  5. Поскольку даты уже выбраны, просто щелкните правой кнопкой мыши и в меню выберите команду Форматировать ячейку .
  6. Наконец примените yyyy/mm/ddформат и закончите с помощью Ok

Похожие вопросы