Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Удалить первое в строчке до знака : - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Удалить первое в строчке до знака :
sonic Дата: Суббота, 14.07.2012, 21:45 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация: 0 ±
Замечаний: 0% ±

Привет, есть файл тхт, в нём строчки вида "цифры:буквы:буквы". Как экселем мне удалить "цифры:" чтобы остались только "буквы:буквы"?
Спасибо.
 
Ответить
СообщениеПривет, есть файл тхт, в нём строчки вида "цифры:буквы:буквы". Как экселем мне удалить "цифры:" чтобы остались только "буквы:буквы"?
Спасибо.

Автор - sonic
Дата добавления - 14.07.2012 в 21:45
Hugo Дата: Суббота, 14.07.2012, 21:57 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Привет! Я на планете уже немного ответил smile
Но тут скажу больше:
1. давайте пример файла
2. почему именно Эксель? Вордом думаю было бы проще... А вообще тут любой скрипт справится.

Вообще если делать вручную - то инструмент "текст по столбцам", первый полученный столбец удаляем, сохраняем остальное назад в текст.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеПривет! Я на планете уже немного ответил smile
Но тут скажу больше:
1. давайте пример файла
2. почему именно Эксель? Вордом думаю было бы проще... А вообще тут любой скрипт справится.

Вообще если делать вручную - то инструмент "текст по столбцам", первый полученный столбец удаляем, сохраняем остальное назад в текст.

Автор - Hugo
Дата добавления - 14.07.2012 в 21:57
Гость Дата: Суббота, 14.07.2012, 23:37 | Сообщение № 3
Группа: Гости
так оно текст по столбцам делает, я удаляю первый столбец но последний остаётся вида "буквы буквы" а мне надо "буквы:буквы". чтобы ":" было между.
 
Ответить
Сообщениетак оно текст по столбцам делает, я удаляю первый столбец но последний остаётся вида "буквы буквы" а мне надо "буквы:буквы". чтобы ":" было между.

Автор - Гость
Дата добавления - 14.07.2012 в 23:37
Hugo Дата: Суббота, 14.07.2012, 23:42 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Делите не по разделителям, а фиксированной ширины (я так файл себе представил :))


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеДелите не по разделителям, а фиксированной ширины (я так файл себе представил :))

Автор - Hugo
Дата добавления - 14.07.2012 в 23:42
Гость Дата: Суббота, 14.07.2012, 23:50 | Сообщение № 5
Группа: Гости
спасибо, понял. так можно но там 450 000 строчек)))
 
Ответить
Сообщениеспасибо, понял. так можно но там 450 000 строчек)))

Автор - Гость
Дата добавления - 14.07.2012 в 23:50
Hugo Дата: Воскресенье, 15.07.2012, 00:20 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Без файла говорим в общем не о чём...
Если задача не разовая - я бы скрипт vbs написал: читаем файл построчно, часть от первого двоеточия до конца строки пишем в другой файл (т.к. 450000 строк, то думаю читать сразу всё в память накладно). Думаю секунд за 15 было бы готово.

P.S. ошибся - на полмиллиона строк достаточно 5-ти секунд.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеБез файла говорим в общем не о чём...
Если задача не разовая - я бы скрипт vbs написал: читаем файл построчно, часть от первого двоеточия до конца строки пишем в другой файл (т.к. 450000 строк, то думаю читать сразу всё в память накладно). Думаю секунд за 15 было бы готово.

P.S. ошибся - на полмиллиона строк достаточно 5-ти секунд.

Автор - Hugo
Дата добавления - 15.07.2012 в 00:20
Гость Дата: Воскресенье, 15.07.2012, 00:27 | Сообщение № 7
Группа: Гости
уже всё сделал =) всем спасибо =)
 
Ответить
Сообщениеуже всё сделал =) всем спасибо =)

Автор - Гость
Дата добавления - 15.07.2012 в 00:27
Hugo Дата: Воскресенье, 15.07.2012, 00:47 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3690
Репутация: 790 ±
Замечаний: 0% ±

365
Чтоб уж закрыть тему - вот небольшлй скрипт, можно его в макрос "завернуть":

[vba]
Code
    t = Timer

         ' FSO Constants
         Const ForReading = 1
         Const ForWriting = 2    
         Const TristateUseDefault = -2
              
         ' Variables
         Dim objFSO, objTS, objOTS

         ' Instantiate the object
         Set objFSO = CreateObject("Scripting.FileSystemObject")

         ' open the text file read only
         Set objTS = objFSO.OpenTextFile("c:\Temp\test.txt", ForReading, False, TristateUseDefault)
           
         ' We now open the file to write it out
         Set objOTS = objFSO.CreateTextFile("C:\Temp\out.txt", ForWriting)

         Do While objTS.AtEndOfStream <> True
         tmp = objTS.ReadLine()
             objOTS.Writeline Mid(tmp, InStr(tmp, ":") + 1)
         Loop
              
         ' Close all files after we read it in.
         objTS.Close
         Set objTS = Nothing
         objOTS.Close
         Set objOTS = Nothing
         Set objFSO = Nothing
           
t = Timer - t
MsgBox "OK! Ready in " & t
[/vba]
К сообщению приложен файл: script.rar (0.5 Kb)


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеЧтоб уж закрыть тему - вот небольшлй скрипт, можно его в макрос "завернуть":

[vba]
Code
    t = Timer

         ' FSO Constants
         Const ForReading = 1
         Const ForWriting = 2    
         Const TristateUseDefault = -2
              
         ' Variables
         Dim objFSO, objTS, objOTS

         ' Instantiate the object
         Set objFSO = CreateObject("Scripting.FileSystemObject")

         ' open the text file read only
         Set objTS = objFSO.OpenTextFile("c:\Temp\test.txt", ForReading, False, TristateUseDefault)
           
         ' We now open the file to write it out
         Set objOTS = objFSO.CreateTextFile("C:\Temp\out.txt", ForWriting)

         Do While objTS.AtEndOfStream <> True
         tmp = objTS.ReadLine()
             objOTS.Writeline Mid(tmp, InStr(tmp, ":") + 1)
         Loop
              
         ' Close all files after we read it in.
         objTS.Close
         Set objTS = Nothing
         objOTS.Close
         Set objOTS = Nothing
         Set objFSO = Nothing
           
t = Timer - t
MsgBox "OK! Ready in " & t
[/vba]

Автор - Hugo
Дата добавления - 15.07.2012 в 00:47
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!