Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Вопрос по Excel. Ни в какой лит-ре найти не могу

Илья PHoeNiX Солоненко Мастер (1229), закрыт 16 лет назад
Допустим дана база, в которой содержится 10 тыс. имен типа:
Солоненко Илья Александрович
Крюков Александр Владимирович
....и т.д.
Мне нужно сделать, что бы с помощью формул, а потом автозаполнения вид базы менялся на следующий:
Солоненко И. А.
Крюков А. В.
....и т.д.
То есть, чтобы имя, отчество заменялись на инициалы.

P.S. Можно ли в Excel переводить числа в разные системы счисления. Например ABA в шестнадцатиричной перевести в двоичную, десятеричную, восьмиричную.
Дополнен 16 лет назад
У меня лабораторная работа по проге excel и препод дал данные задания (это те, которые я не знаю как выполнить). Что так сделать можно я знаю и знаю что это делается 5 минут.. Но вот как..
Лучший ответ
Антон Владимирович Искусственный Интеллект (703206) 16 лет назад
Ответ на вопрос №1.
Насколько я знаю, нельзя.
Повторяю, я не уверен, но, судя по моим знаниям, эту базу лучше перевести в аксесс, а дальше - работать ручками. Занудно, долго, но придется. . Посоздавать макросов на каждое имя и фамилию, а потом - опять своими ручками. А фигли делать-то? Другого пока не придумано.
Но лучше это делать именно в базе данных, а не в электронной таблице, каковою, собственно, эксель и является. Таблицы не для этого предназначены.

Ответа на вопрос № 2 я не знаю. Однако, опять-таки по моим знаниям, эксель для этого не предназначен, а предназначен он для сугубо прагматических целей: это обычная офисная программа с функциями, предназначенными для офиса.
А то, что тебе нужно, - стОит не сто рублей на рынке, а три-четыре тысячи, да и то, если найдешь. Обратись с этим вопросом в рубрику "Наука и техника", там иногда наши математики и физики ползают, они подскажут, что искать и куда идти покупать.
Остальные ответы
Дмитрий Смельцов Знаток (384) 16 лет назад
Формула выглядит таким образом
Если в А1 Солоненко Илья Александрович, что А2=
=СЦЕПИТЬ(ЛЕВСИМВ(A1,ПОИСК(" ",A1,1)),ПСТР(A1,ПОИСК(" ",A1,1)+1,1),".",ПСТР(A1,ПОИСК(" ",A1,ПОИСК(" ",A1,1)+1)+1,1),".")
" " - в ковычках надо поставить пробел
Math Мастер (1658) 16 лет назад
Можно, например, так. Используя функцию поиска подстроки. Искать пробелы. Пробелы разделяют слова. После найденного пробела брать 1 символ и ставить точку. так получится сокращенное имя. Потом искать след пробел и аналогично выделять сокращение отчества.

Функция НАЙТИ находит вхождение одной текстовой строки (искомый_текст) в другую текстовую строку (просматриваемый_текст) и возвращает положение начала искомого текста относительно крайнего левого знака просматриваемого текста.
НАЙТИ(искомый_текст;просматриваемый_текст;нач_позиция)

ПСТР возвращает указанное число знаков из текстовой строки, начиная с указанной позиции.
ПСТР(текст; начальная_позиция;число_знаков)

СЦЕПИТЬ
Объединяет несколько текстовых строк в одну.
СЦЕПИТЬ (текст1;текст2;...)

Пусть, например,
A1-начальное данное
в B1 пишем "=НАЙТИ(" ";A1;1)"
в С1 формируем инициал имени: "=ПСТР(A1, B1+1;1)"
в строке D1 можем получить фамилию + ИнициалИмени.
пишем в D1 "=СЦЕПИТЬ (ПСТР(A1, 1, B1);D1;".")"

С отчеством постарайтесь доделать сами - это полезно. :)
Nau Просветленный (23638) 16 лет назад
В справке экселя упоминаются инженерные функции:
ДВ. В. ДЕС Преобразует двоичное число в десятичное.
ДВ. В. ШЕСТН Преобразует двоичное число в шестнадцатеричное.
ДВ. В. ВОСЬМ Преобразует двоичное число в восьмеричное.
и в другую сторону перевод есть.
Другое дело, что они устанавливаются вместе с компонентом экселя "Пакет анализа", кажется.

makfromkz Высший разум (126955) 16 лет назад
основаниерезультат деленияРезДел*Основаниеостаток
8
123=ЦЕЛОЕ(A6/$A$5)=B6*$A$5=A6-C6
=B6=ЦЕЛОЕ(A7/$A$5)=B7*$A$5=A7-C7
=B7=ЦЕЛОЕ(A8/$A$5)=B8*$A$5=A8-C8
8 - это основание системы
123 десятичное число переводим в 8-ричное
в столбце остаток собираем цифры переведенного числа в обратном порядке ( для шестнадцетиричных не забудем про A B C D E F)
вот ответ:

основаниерезультат деленияРезДел*Основаниеостаток
8
123151203
15187
1001
123 по основанию 10 равно 173 по основанию 8
Похожие вопросы