На прошлой неделе Microsoft опубликовала спецификации форматов бинарных файлов для Office. Эти форматы выглядят безумно. Формат файла Excel 97-2003 представляет собой 349-страничный файл PDF. И это ещё не всё! В документе содержится такой комментарий:
Каждый лист [workbook] в Excel хранится в составном файле.
Видите ли, файлы Excel 97-2003 – это составные документы OLE, которые в свою очередь представляют собой некое подобие файловой системы в одном файле. Чтобы в этом разобраться, нужно прочитать 9 страниц документации. А сами спецификации больше похоже на структуры данных в С, чем на то, что мы привыкли называть спецификациями. Это иерархическая система файлов.
Если вы подумали, что почитаете эти форматы и за выходные набросаете утилитку для экспорта вордовских документов в свой блог, или создающую экселевские таблички на основе ваших персональных финансовых данных, то сложность и длина этих спецификаций должны были отбить у вас всю охоту. Нормальный программист решит, что формат бинарников из Office:
Пользовательский формат в Excel (Маски формата)
- сделан запутанным специально
- придуман каким-то страдающим от старческого маразма представителем кибернетической расы боргов
- создан безумно плохими программистами
- не может быть правильно создан или прочитан
Первое, что нужно понять – цели у разработчиков форматов бинарников кардинально отличались от целей разработчиков, допустим, HTML.
Они должны были очень быстро работать на очень старых компьютерах. Во времена первых версий Excel для Windows 1 мегабайт памяти был не редкостью, а работать достаточно комфортно программа должна была на процессорах 80386 с частотой 20 МГц. Множество оптимизаций сделано для ускорения открытия и сохранения файлов:
- Это форматы бинарных файлов, поэтому загрузка записи обычно означает копирование последовательности байтов с диска в память, в которой появляется структура данных С. Не происходит никакого разбора или лексического анализа данных, так как это в разы медленнее простого копирования.
- Формат файлов запутан в нужных местах для ускорения типичных операций. К примеру, у Excel 95 и 97 была функция «простого сохранения», которая использовалась в качестве ускоренного варианта документа OLE, полная версия которого была не слишком быстрой для повсеместного использования. У Word было нечто подобное под названием «быстрое сохранение». Для быстрого сохранения длинных документов 14 раз из 15 все изменения просто добавлялись в конец файла, а весь файл не перезаписывался с нуля. Для жёстких дисков того времени это означало, что можно было успеть сохранить документ, допустим, за 1 секунду вместо 30. Также это означало, что удалённые части документа всё ещё хранились в файле – а людям, как оказалось, это не было нужно.
У Office была поддержка составных документов, к примеру, можно было включить электронную таблицу в файл Word. Идеальный парсер Word должен был суметь сделать что-то умное с включённой таблицей.
Пользовательские форматы чисел в Excel с нуля до профи за 40 минут!
Они не разрабатывались для использования в других приложениях. Довольно разумное на тот момент предположение заключалось в том, что формат Word будет писать и читать только программа Word. Поэтому когда программист из команды разработчиков Word принимал решение о смене формата файла, его волновали лишь а) скорость работы и б) минимальное количество строк в коде Word.
Идеи вещей типа SGML и HTML, заменяемых, открытых и стандартизированных форматов, не были популярными, пока интернет не сделал такие вещи практичными. Этот момент пришёл через 10 лет после разработки форматов файлов Office. Всегда предполагалось использование программ для экспорта и импорта. У Word есть поддержка формата для простого обмена документами по имени RTF, существовавшего почти с самого начала.
Им нужно было отразить всю сложность приложений. Каждую галочку, каждую возможность форматирования и каждую функцию Microsoft Office необходимо было хранить в файлах. Поэтому для создания идеального клона Word, читающего его файлы, нужно было реализовать все его функции.
Если вы создаёте программу для работы с текстом – конкурента Word, которая должна уметь загружать его файлы, у вас может занять немного времени сама загрузка указанных в файле опций. Но реальное отображение их всех на странице – это задача более сложная. А если её не решить, то ваши клиенты откроют вордовский файл в вашем клоне, и всё форматирование может поломаться.
Им нужно было отражать историю развития программ. Множество сложных вещей в форматах – это старые, сложные, ненужные и редко используемые функции. Они присутствуют там лишь для обратной совместимости и потому, что для разработчиков ничего не стоит оставить код в покое.
Но чтобы тщательно выполнить работу разборки или записи этих файлов, вам придётся повторить всю эту работу, что была проделана в Microsoft за 15 лет. В текущие версии Word и Excel вложены тысячи человеко-часов работы, и для клонирования этих программ вам придётся вложить свои тысячи человеко-часов. Формат файла – это просто краткое обобщение всех поддерживаемых приложением функций.
Просто для примера разберём одну возможность подробнее. Лист Excel – это набор разных записей BIFF. Рассмотрим самую первую запись в спецификации – это запись под именем 1904.
В спецификации об этой записи написано весьма туманно. Просто написано, что «запись 1904 показывает, используется ли система дат 1904». Классический пример бесполезной спецификации. Если бы вы были разработчиком, и наткнулись бы на такое «объяснение», вы бы весьма оправданно пришли к заключению, что Microsoft что-то скрывает.
Такое описание недостаточно само по себе, вам нужно искать дополнительную информацию. Я поясню: существует два типа листов Excel. В одних даты начинаются с 1/1/1900 (в них же ошибка високосного года специально создана для совместимости с форматом 1-2-3), в других – с 1/1/1904. Excel поддерживает оба варианта – поскольку первая его версия, для Mac, использовала второй вариант, который был системным, а Excel для Windows должен был иметь возможность импортировать файлы 1-2-3, использовавшие даты с 1/1/1900. Уже на этом месте можно расплакаться.
Оба типа файлов, 1900 и 1904, встречаются в изобилии в дикой природе, в зависимости от того, пришли они с Mac или Windows. Автоматическая конвертация дат может привести к ошибкам, поэтому Excel сам тип файла не меняет. Для разборки файлов Excel приходится работать с обоими. А это значит, что вам не просто нужно загрузить этот бит из файла, но ещё и переписать весь код разбора и показа дат, чтобы обрабатывать оба варианта. Это работа на несколько дней.
Работая над клоном Excel вы встретите множество таких скрытых деталей по работе с датами. Когда Excel преобразовывает числа в даты? Как работает форматирование? Почему 1/31 интерпретируется как 31 января текущего года, а 1/50 – как первое января 1950? Все эти детали нельзя описать без того, чтобы получившееся описание не сравнялось по объёму с исходниками Excel.
И это только одна из сотен BIFF-записей, и одна из простейших. Большинство из них настолько сложные, что могут заставить взрослого программиста рыдать.
Единственное возможное решение будет следующим. Конечно, Microsoft оказала большую услугу, опубликовав форматы файлов, но импортировать их или сохранять в них от этого легче не будет. Это безумно сложные приложения, и вы не можете просто реализовать 20% самых популярных функций и рассчитывать, что 80% остальных людей будут счастливы. Спецификации бинарников в лучшем случае сохранят вам пару минут при реверс-инжиниринге сложной системы.
Но я обещал рассказать, что с этим делать. Почти всем популярным приложениям не нужно заниматься чтением и записью бинарников от Office. Есть две альтернативы: дать Office работать самому, или использовать более простые форматы файлов.
Пусть Office работает сам. У Word и Excel есть весьма полные модели объектов, доступные через COM Automation, благодаря чему в программе можно сделать всё. Во многих случаях лучше повторно использовать код из Office вместо попыток написать его заново. Примеры:
- У вас есть веб-приложение, которому нужно вывести файлы Word в формате PDF. Я бы сделал это так: несколько строк на Word VBA загружают файл и сохраняют его в PDF через встроенный в Word 2007 механизм. Этот код можно вызывать напрямую, даже из ASP или ASP.NET, работающего под IIS. Первый запуск Word займёт несколько секунд. В последствии Word будет находиться в памяти под управлением COM-системы. Для обычных веб-приложений такая система работает довольно быстро.
- Та же задача под Linux. Купите один сервер Windows 2003, установите на него лицензионный Word, и настройте простой веб-сервис. Работы на полдня, с применением C# и ASP.NET
- Та же задача но с возможностью масштабирования. Настройте балансировку нагрузки перед любым необходимым количеством коробок из второго шага. Никакого программирования не потребуется.
- Открытие листа Excel, сохранение некоторых данных в ячейках, подсчёт и выдача результата.
- Использования Excel для создания графиков в формате GIF
- Вытаскивание любой информации из файла Excel без разбора форматов файлов
- Преобразование файла Excel в CSV (другой подход – использовать драйверы Excel ODBC и забирать данные через SQL-запросы)
- Редактирование документов Word
- Заполнение форм в Word
- Преобразование файлов между разными форматами, которые поддерживает Office (существуют возможности импортирования десятков форматов текстовых процессоров и электронных таблиц).
Используйте форматы попроще. Если вам просто нужно программно создать документы для Office, почти всегда есть формат получше, который затем можно свободно открыть в Word или Excel.
- Для создания табличных данных и использования их в Excel используйте CSV.
- CSV не поддерживает вычисления, так что для их использования возьмите формат WK1, доставшийся от Lotus 1-2-3. Он гораздо проще, чем у Excel, и открывается им на раз.
- Если вам ну очень надо создавать нативные файлы Excel, возьмите очень старую его версию. 3.0 – хороший выбор, там не было составных документов. Сохраните в Excel 3.0 минимальный файл только с теми функциями, которые вам необходимы, и используйте его как пример минимальной BIFF-записи.
- Для документов Word используйте HTML
- Если вам очень надо создать файл для Word с модным форматированием, проще всего создать RTF. Всё, что умеет Word, можно написать в RTF, но этот формат текстовый, так что в нём что-то можно поменять руками и он будет работать. Вы можете создать красиво отформатированный файл в Word, сохранить в RTF и использовать простую замену текста.
- История IT
- IT-компании
Источник: habr.com
Advanced Excel — форматы файлов
Форматы файлов Excel
Форматы текстовых файлов
Если вы сохраните книгу в любом текстовом формате, все форматирование будет потеряно.
Форматированный текст (ограниченное пространство) | .prn | Lotus — это формат, разделенный пробелами. Сохраните только активный лист. |
Текст (с разделителями табуляцией) | .текст | Сохраняет книгу как текстовый файл с разделителями табуляции для использования в другой операционной системе Microsoft Windows и обеспечивает правильную интерпретацию табуляции, разрывов строк и других символов. Сохраните только активный лист. |
Текст (Macintosh) | .текст | Сохраняет книгу как текстовый файл с разделителями табуляции для использования в операционной системе Macintosh и обеспечивает правильную интерпретацию табуляции, разрывов строк и других символов. Сохраните только активный лист. |
Текст (MS-DOS) | .текст | Сохраняет книгу как текстовый файл с разделителями табуляции для использования в операционной системе MS-DOS и обеспечивает правильную интерпретацию табуляции, разрывов строк и других символов. Сохраните только активный лист. |
Текст Unicode | .текст | Сохраните книгу как текст Unicode, стандарт кодировки символов, разработанный консорциумом Unicode. |
CSV (через запятую) | .csv | Сохраняет книгу как текстовый файл с разделителями-запятыми для использования в другой операционной системе Windows и обеспечивает правильную интерпретацию вкладок, разрывов строк и других символов. Сохраните только активный лист. |
CSV (Macintosh) | .csv | Сохраняет книгу как текстовый файл с разделителями-запятыми для использования в операционной системе Macintosh и обеспечивает правильную интерпретацию табуляции, разрывов строк и других символов. Сохраните только активный лист. |
CSV (MS-DOS) | .csv | Сохраняет книгу как текстовый файл с разделителями-запятыми для использования в операционной системе MS-DOS и обеспечивает правильную интерпретацию табуляции, разрывов строк и других символов. Сохраните только активный лист. |
DIFF | .dif | Формат обмена данными. Сохраните только активный лист. |
SYLK | .slk | Формат символьной ссылки. Сохраните только активный лист. |
Другие форматы файлов
DBF 3, DBF 4 | .dbf | База III и IV. Вы можете открыть эти форматы файлов в Excel, но не можете сохранить файл Excel в формате dBase. |
Таблица OpenDocument | .ods | Электронная таблица OpenDocument. Вы можете сохранять файлы Excel 2010, чтобы их можно было открывать в приложениях для работы с электронными таблицами, которые используют формат электронных таблиц OpenDocument, таких как Google Docs и OpenOffice.org Calc. Вы также можете открывать электронные таблицы в формате .ods в Excel 2010. Форматирование может быть потеряно при сохранении и открытии файлов .ods. |
Формат переносимого документа (PDF). Этот формат файла сохраняет форматирование документа и совместное использование файлов. Когда файл PDF просматривается в Интернете или распечатывается, он сохраняет желаемый формат. Данные в файле нельзя легко изменить. PDF также полезен для воспроизведения документов с использованием методов коммерческой печати. | ||
Документ XPS | .xps | Спецификация карты XML (XPS). Этот формат файла сохраняет форматирование документа и совместное использование файлов. Когда файл XPS просматривается в Интернете или распечатывается, он сохраняет именно тот формат, который требуется, и данные в файле не могут быть легко изменены. |
Шаг 1: Выберите меню «Файл .
Шаг 2: Нажмите на опцию «Сохранить как». Вы можете выбрать, где сохранить книгу, как на локальных устройствах (например, на компьютере), так и в Интернете (например, OneDrive).
Шаг 3: Щелкните Компьютер .
Откроется диалоговое окно «Сохранить как» .
Шаг 4: Нажмите «Сохранить как». Будут перечислены форматы файлов.
Отображаемые форматы файлов зависят от типа активного рабочего листа в книге (рабочий лист данных, графический рабочий лист или другой тип рабочего листа).
Шаг 5: Щелкните нужный формат файла.
Форматы файлов, использующие буфер обмена
вы можете использовать буфер обмена для копирования данных в буфер обмена в файлах различных форматов, которые можно вставить в Excel с помощью команды «Вставить» или «Специальная вставка .
Изображения в формате метафайлов Windows (WMF) или в расширенном формате метафайлов Windows (EMF).
ПРИМЕЧАНИЕ. — Если вы скопируете изображение метафайла Windows из другой программы, Excel вставит изображение как расширенный метафайл.
Язык разметки гипертекста (HTML).
ПРИМЕЧАНИЕ. — При копировании текста из другой программы Excel вставляет HTML-текст независимо от формата исходного текста.
Изображения в формате метафайлов Windows (WMF) или в расширенном формате метафайлов Windows (EMF).
ПРИМЕЧАНИЕ. — Если вы скопируете изображение метафайла Windows из другой программы, Excel вставит изображение как расширенный метафайл.
Язык разметки гипертекста (HTML).
ПРИМЕЧАНИЕ. — При копировании текста из другой программы Excel вставляет HTML-текст независимо от формата исходного текста.
Форматы файлов не поддерживаются в Excel 2013
Excel 2013 больше не поддерживает следующие форматы файлов и не может открывать или сохранять файлы в этих форматах.
Диаграмма Excel | .xlc | Форматы файлов Excel 2.0, 3.0 и 2.x |
WK1, FMT, WK2, WK3, FM3, WK4 | .wk1, .wk2, .wk3, .wk4, .wks | Форматы файлов Lotus 1-2-3 (все версии) |
Microsoft работает | .wks | Формат файла Microsoft Works (все версии) |
DBF 2 | .dbf | Формат файла DBASE II |
WQ1 | .wq1 | Quattro Pro для формата файлов MS-DOS |
WB1, WB3 | .wb1, .wb3 | Quattro Pro 5.0 и 7.0 для Windows. |
Если вам нужно работать с данными книги в программе, которая больше не поддерживается, попробуйте следующее:
Найдите онлайн-компанию, которая производит конвертеры форматов файлов для неподдерживаемых форматов файлов в Excel 2013.
Сохраните книгу в другом формате файла, который можно открыть в другой программе. Например, сохраните формат XML или текстового файла в электронной таблице, которую также может поддерживать другая программа.
Источник: excel-home.ru
XLS – Электронная таблица Microsoft Excel 97-2003 (Microsoft Excel 97-2003 Spreadsheet)
Расширение программы Excel бывает самым разным. Одно расширение предназначено для создания книг с данными, другое — для создания книг с макросами. Но каждое расширение выполняется лишь в среде программы. Расширение, созданное для выполнения в другой программе, отличной от Excel, пока еще не придумано.
Сам файл Excel, имеющий расширение xls или xlsx в зависимости от версии программы, предназначен только для использования в конкретной версии. Если документ Excel создан в старой версии 2003 года, то он легко прочитается и в более старших версиях приложения.
В несколько ранних версиях расширение утилиты Excel было только одно и называлось BIFF. Точнее, оно являлось даже не расширением, а собственным бинарным форматом файлов. Это было не очень удобно, так как Excel не мог читать некоторые данные, необходимые при работе с этим инструментом. Поэтому в версиях Excel от 2007 года было решено ввести некоторые дополнительные элементы, которые значительно облегчили жизнь современного пользователя, работающего с приложением Excel.
Форматы файлов Excel
Как изменить количество знаков после запятой в Excel?
Для того чтобы увеличить или уменьшить количество отображаемых десятичных знаков во всех числовых стилях (финансовом, с разделителем и процентном), щелкните на соответствующих кнопках группы Число вкладки Главная. После каждого щелчка на кнопке Увеличить разрядность (на ней стрелка указывает влево) программа добавляет к числовому формату дополнительный десятичный разряд. Если же щелкнуть на кнопке Уменьшить разрядность, то десятичный разряд будет удален.
Форматы текстовых файлов
Если вы сохраните книгу в любом текстовом формате, все форматирование будет потеряно.
Формат | расширение | Описание |
Форматированный текст (Spacedelimited) | .prn | Lotus разделенный пробелами формат. Сохраняет только активный лист. |
Текст (Tabdelimited) | .текст | Сохраняет книгу в виде текстового файла с разделителями табуляции для использования в другой операционной системе Microsoft Windows и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
Текст (Macintosh) | .текст | Сохраняет книгу в виде текстового файла с разделителями табуляции для использования в операционной системе Macintosh и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
Текст (MS-DOS) | .текст | Сохраняет книгу в виде текстового файла с разделителями табуляцией для использования в операционной системе MS-DOS и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
Unicode Text | .текст | Сохраняет рабочую книгу как текст Unicode, стандарт кодировки символов, разработанный консорциумом Unicode. |
CSV (через запятую) | .csv | Сохраняет книгу в виде текстового файла с разделителями-запятыми для использования в другой операционной системе Windows и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
CSV (Macintosh) | .csv | Сохраняет книгу в виде текстового файла с разделителями-запятыми для использования в операционной системе Macintosh и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
CSV (MS-DOS) | .csv | Сохраняет книгу в виде текстового файла с разделителями-запятыми для использования в операционной системе MS-DOS и обеспечивает правильную интерпретацию символов табуляции, разрывов строк и других символов. Сохраняет только активный лист. |
DIF | .dif | Формат обмена данными. Сохраняет только активный лист. |
SYLK | .slk | Формат символической ссылки. Сохраняет только активный лист. |
Настройки формата ячеек
Все эти функции отображены на вкладке «Выравнивание». Здесь уже есть возможность поместить символы в ячейке относительно некоторых нужных параметров и границ. К примеру, можно разместить надписи справа, слева либо по центру ячейки. Ну и, естественно, вполне реально поместить надпись по вертикали, то есть сверху вниз или же снизу вверх, или по горизонтали. К тому же в этом пункте реально изменить распределение нескольких слов в одной ячейке, для чего следует активировать флажок «Переносить по словам».
В настройке «Формата ячеек» есть большая вкладка «Число». Она позволяет установить абсолютно любой необходимый формат числа. К примеру, можно разместить подобную надпись в виде числа, текстовой информации, дроби, валюты, процентов и так далее. Здесь же можно установить количество цифр после запятой, а также разделить число на разряды.
На панели «Главная» есть раздел, называющийся «Стили». Он подразумевает использование готовых стилей при форматировании ячеек. Для того чтобы, в зависимости от установленных условий, ячейки перекрашивались в определенный цвет, предназначена функция «Условное форматирование».
Ну и, наконец, раздел «Редактирование» позволяет осуществить поиск элементов по всей книге и быстро перейти в нужную ячейку. Эта функция раздела, находится под названием «Поиск».
Другие форматы файлов
— Выберите меню
Файл
.
— Нажмите на опцию
Сохранить как
. Вы можете выбрать место для сохранения рабочей книги как на локальных устройствах (например, на компьютере), так и в Интернете (например, OneDrive).
— Нажмите на
компьютер
.
Откроется диалоговое окно « Сохранить как»
— Нажмите «
Сохранить как
». Форматы файлов будут перечислены.
Отображаемые форматы файлов зависят от типа активного рабочего листа в рабочей книге (рабочий лист данных, рабочий лист диаграммы или другой тип рабочего листа).
— Нажмите на нужный формат файла.
Форматы файлов, использующие буфер обмена
Вы можете использовать буфер обмена для копирования данных в буфер обмена в нескольких форматах файлов, которые можно вставить в Excel с помощью команды Вставить
или
Специальная вставка
.
ПРИМЕЧАНИЕ. — Если вы копируете изображение метафайла Windows из другой программы, Excel вставит изображение как расширенный метафайл.
ПРИМЕЧАНИЕ. — При копировании текста из другой программы Excel вставляет текст в формате HTML независимо от формата исходного текста.
Изображения в формате метафайла Windows (WMF) или в формате расширенного метафайла Windows (EMF).
ПРИМЕЧАНИЕ. — Если вы копируете изображение метафайла Windows из другой программы, Excel вставит изображение как расширенный метафайл.
Язык разметки гипертекста (HTML).
ПРИМЕЧАНИЕ. — При копировании текста из другой программы Excel вставляет текст в формате HTML независимо от формата исходного текста.
Форматы файлов не поддерживаются в Excel 2013
Excel 2013 больше не поддерживает следующие форматы файлов, и вы не можете открывать или сохранять файлы в этих форматах.
Формат | расширение | Идентификаторы типа буфера обмена |
Диаграмма Excel | .xlc | Форматы файлов Excel 2.0, 3.0 и 2.x |
WK1, FMT, WK2, WK3, FM3, WK4 | .wk1, .wk2, .wk3, .wk4, .wks | Форматы файлов Lotus 1-2-3 (все версии) |
Microsoft Works | .wks | Формат файла Microsoft Works (все версии) |
DBF 2 | .dbf | Формат файла DBASE II |
WQ1 | .wq1 | Quattro Pro для формата файлов MS-DOS |
WB1, WB3 | .wb1, .wb3 | Quattro Pro 5.0 и 7.0 для Windows. |
Если вам нужно работать с данными рабочей книги в программе, которая больше не поддерживается, попробуйте следующее:
Найдите в Интернете компанию, которая производит конвертеры форматов файлов для форматов файлов, которые не поддерживаются в Excel 2013.
Сохраните вашу книгу в другой формат файла, который можно открыть в другой программе. Например, сохраните в электронную таблицу XML или текстовый формат файла, который также может поддерживать другая программа.
Форматы ячеек в приложении Excel
Формат этой программы прямым образом влияет на то, как будет выглядеть конечный результат. К примеру, есть возможность полностью поменять шрифт в книге, в частности его размеры, цвета и прочие параметры. Как известно, вся рабочая область в программе включает в себя некоторое количество ячеек, изменение формата которых приводит к изменению вида результирующего документа. Есть возможность тщательно настроить формат ячеек либо же их диапазон. Сделать это можно несколькими работающими способами.
Этот вариант является самым простым и не требует больших навыков. Все, что нужно пользователю, это, находясь в
нужной ячейке, вызвать с помощью правой кнопки мыши специальное контекстное меню и там войти в пункт «Формат ячеек» и настроить нужные параметры, включающие границы, заливки, форматы отображения и вид выравнивания.
Второй вариант подразумевает под собой поиск функции в панели под названием «Главная». В частности, необходимо отыскать эту панель, перейти на нее и там уже выбрать раздел, который называется «Шрифты».
Именно здесь есть возможность настроить все без исключения параметры отображения конкретных символов, такие как его размеры, цвета и виды. Помимо этого, здесь же можно найти тот же пункт «Формат ячеек» и использовать функции для выделения ячейки цветом, а также отображения границ выделенного диапазона с помощью любых имеющихся цветов.
Источник: mycomp.su