powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2007 - формат чисел для tsv
8 сообщений из 8, страница 1 из 1
Excel 2007 - формат чисел для tsv
    #38970621
Гость3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я часто открываю tsv-файлы для просмотра в Excel. У меня проблема, омрачающая существование: открываешь tsv-файл и Excel пытается умничать, переводя длинные числа в форму вроде 1.19E+12.

Приходится перевыставлять формат ячеек, но при открытии нового документа формат приходится снова менять.

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

Данная проблема много где обсуждена, но решения лучше "открывай файл и меняй каждый раз формат вручную" пока не встретилось.

Как жить с этим? Хоть свой просмотрщик пиши вместо excel :-)

В Excel есть меню с предопределёнными стилями ячеек (обычный-нейтральный-плохой-хороший...). Можно ли туда добавить свои так, чтобы они для нового документа видны были?
Может, что-то подобное normal.dot есть?
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38970827
Гость3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, надстройку какую можно сделать, но я пока не соображу как.

Надстройку было бы неплохо: можно было бы логику [если в знaчениях столбца (за исключением первой строки) встречаются только цифры и разделители, тогда установить числовой формат: если встречается точка (десятичный разделитель) - установить формат 0.00 (жёстко два знака после запятой), иначе просто 0 (просто целое число)]
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38970869
An12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в CSV эти числа хранить в кавычках ...;"1300000000000000";...
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38971002
Гость3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторв CSV эти числа хранить в кавычках ...;"1300000000000000";...Они так и хранятся, только разделители - табуляции.
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38971048
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Открывай не двбл-кликом, а импортом из текста на чистый лист. В процессе импорта укажешь все нужные тебе параметры, чтобы сразу получить то, что надо.
А если запишешь это всё макрорекордером, подрихтуешь и кинешь на кнопку - вообще горя знать не будешь.
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38971743
Гость3
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AkinaОткрывай не дабл-кликом..."дабл-клик и поправить неправильные столбцы" удобнее получается.

Тут вопрос: логика всё равно тупая, можно ли заставить Excel при открытии сразу делать, как мне удобно? Я с Excel не очень знаком, но там же всякие макросы-надстройки есть, задача тоже похожа на типовую.

С макросом проблема: если писать макрос - он, разумеется, не сохраняется в .tsv и каждый раз приходится писать его заново.
Как сделать макрос, который бы выполнялся для вновь открытого .tsv (для всяких .xlsx не надо)?
Как хотя бы сделать кнопку, которая бы сохранялась между открытиями файлов?
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38971826
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гость3Как хотя бы сделать кнопку, которая бы сохранялась между открытиями файлов?
Самый простой для тебя вариант имхо такой.
Записать указанный макрос.
Подрихтовать его - например, добавить диалог для выбора файла вместо жёсткого задания имени. Проверить, что макрос корректно работает при запуске через меню "Макросы" ленты "Разработчик". Если есть желание - можно назначить ему горячую клавишу и проверить, что срабатывает правильно. Переименовать, дав ему вменяемое и понятное имя.
Удалить все листы, кроме одного. Удалить с листа все данные.
Сохранить полученный файл в папку %USERPROFILE%\AppData\Roaming\Microsoft\Excel\XLSTART , имя неважно, но рекомендую чистый 8.3 А-набора.
Всё. Теперь этот макрос будет доступен из любой книги, открытой на этом компе в этом профиле. Конечно, при условии, что макросы не запрещены.
Если надо, можно (но я бы не рекомендовал - разве что в папку автостарта Excel, чтобы работало для любого пользователя на этом АРМ) использовать другие места для сохранения файла, см. "Надёжные расположения" центра управления безопасностью.
...
Рейтинг: 0 / 0
Excel 2007 - формат чисел для tsv
    #38972214
Казанский
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гость3Надстройку было бы неплохо: можно было бы логику [если в знaчениях столбца (за исключением первой строки) встречаются только цифры и разделители, тогда установить числовой формат: если встречается точка (десятичный разделитель) - установить формат 0.00 (жёстко два знака после запятой), иначе просто 0 (просто целое число)]Эту процедуру можно разместить в "личной книге макросов" PERSONAL.XLSB. Если у Вас еще нет этой книги, создайте ее: начните запись макроса, Сохранить в: Личная книга макросов, ОК. Можете сразу остановить запись - книга уже создана. Alt+F11, VBA Project (PERSONAL.XLSB) - Microsoft Excel Objects - ЭтаКнига (или ThisWorkbook), вставьте код
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Option Explicit

Dim WithEvents app As Application

Private Sub app_WorkbookOpen(ByVal Wb As Workbook)
  If LCase$(Right$(Wb.Name, 4)) = ".tsv" Then
    Wb.Worksheets(1).Cells.NumberFormat = "0"
  End If
End Sub

Private Sub Workbook_Open()
  Set app = Application
End Sub

Чтобы попробовать немедленно, запустите Private Sub Workbook_Open() прямо из редактора, потом в Excel откройте файл.
Я не понял, то ли Вы хотите индивидуально каждой ячейке назначить формат, то ли единый формат для целого столбца. Пока назначается формат "0" всем ячейкам.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Excel 2007 - формат чисел для tsv
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]