Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2013, 17:55   #1
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
Вопрос Какой формулой задать числовое значени для ячейки, в которой что-либо написано

И так, теперь пытаюсь по-русски объяснить что именно нужно (объяснить это поисковым системам не удалось =__= )

У меня офис 2010

Какой формулой воспользоваться, чтобы она присваивала ячейке определенное значение, если в ней написано что-либо (то есть что угодно)? Например, в этой ячейке стоит + или v или любой другой значок, то заменить его на 2 , а в другой ячейке записано что угодно и заменить это на 3 и т.д. (я понимаю, что это нужно прописать для каждой ячейки отдельно)

Я переношу из ворда таблицы с ответам на методики (испытуемые мне там отвечали и плюсиками, и галочками, и палочками и всем подряд) прописать формулы подсчета баллов я смогу без проблем, но не знаю как именно прописать чтобы он заменял любые символы на конкретные значения в определенных ячейках. Помогите с этим пожалуйста =з

Последний раз редактировалось Sadja; 12.05.2013 в 18:06.
Sadja вне форума Ответить с цитированием
Старый 12.05.2013, 18:56   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Поиск-замена не устроит?
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 12.05.2013, 19:03   #3
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
По умолчанию

Не очень, но в крайнем случае можно (в основном все же отвечали "+"-ми , но некоторые не ленились и отмечали каждую ячейку разными буквами =__= )

Там у меня опрос на 150 вопросов и еще пара маленьких, если вручную все сидеть пребивать, то это будет почти то же самое если вручную все считать =з Поэтому пытаюсь найти формулу, которая бы помогла. (подумала, что если эксель может дисперсионный анализ сделать, то и с этим должен справляться =з )
Sadja вне форума Ответить с цитированием
Старый 12.05.2013, 19:15   #4
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
По умолчанию

То есть я перекидываю из ворда таблички примерно вот в таком виде


И мне нужно чтобы в экселевской таблице уже было прописано, что в ячейке А1 заменять на 4, в B1 на 3, в C1 на 2 и т.д. То есть если в ячейку вставляется запись, то он меняет ее на определенное число и потом я уже по формулам сумм высчитываю что там дальше нужно, а если в ячейку ничего не вставилось, то она так и стоит молча с формулой и не мешает х)
Sadja вне форума Ответить с цитированием
Старый 12.05.2013, 19:26   #5
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Формулой - можно, но результат получится не в исходной ячейке, а в какой-то другой. Потом столбцы с результатом надо будет скопировать и вставить в исходные ячейки как значения.
Поэтому удобнее решать эту задачу макросом. Макрос поменяет значение всех непустых ячеек в первых 4-х столбцах текущего листа на соотв. число:
Код:
Sub bb()
Dim i&, r As Range
On Error Resume Next
For i = 1 To 4
    Set r = Columns(i).SpecialCells(xlCellTypeConstants)
    If Err Then Err.Clear Else r.Value = 5 - i
Next
End Sub
Макрос аналогичен ручным действиям: выделить 1-й столбец, F5 - выделить - константы, ввести 4, Ctrl+Enter.
Выделить 2-й столбец, F5 - выделить - константы, ввести 3, Ctrl+Enter. И т.д.
exceleved@yandex.ru Яндекс.Деньги: 410011500007619

Последний раз редактировалось Казанский; 12.05.2013 в 19:31.
Казанский вне форума Ответить с цитированием
Старый 12.05.2013, 19:32   #6
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
По умолчанию

В целом, если по формуле результат будет выводиться в другую ячейку, то это тоже подходит (мне это не надо в виде отчета сдавать начальству х) а только для скорости обработки массива данных), напишите пожалуйста и этот вариант =)

А то я с макросами не шибко дружу =з (но в крайнем случае он у меня уже есть - за это спасибо ^__^ )
Sadja вне форума Ответить с цитированием
Старый 12.05.2013, 19:47   #7
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Код:
=ЕСЛИ(ЕПУСТО(A1);"";5-СТОЛБЕЦ(A1))
Введите в какую-нибудь свободную ячейку, например G1. "Растяните" на 4 ячейки вправо, потом вниз насколько нужно.
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 12.05.2013, 19:55   #8
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
По умолчанию

Угу, информацию про макросы себе запишу (а то в новом офисе их еще не делала =з ) за это спасибо. Только они тут не вполне подходят, поскольку по методике в некоторых вопросах (то есть в строках) баллы за ответы присуждаются по восходещей 1,2,3,4 , а за некоторые (то есть в других строках) наоборот, за ответы в те же ячейки 4,3,2,1 Вот такие дела.

Но ура, пока я сидела ждала ответ, затыкала сам эксель (подряд каждую функцию о_о ) и таки нашла нужную формулу х) Это было =ПОДСТАВИТЬ(A2;A2;1)

Спасибо огромное за готовый макрос и за наведение на подходящее решение Действительно очень рада =) Еще раз спасибо
Sadja вне форума Ответить с цитированием
Старый 12.05.2013, 19:58   #9
Sadja
Новичок
Джуниор
 
Аватар для Sadja
 
Регистрация: 12.05.2013
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
Код:
=ЕСЛИ(ЕПУСТО(A1);"";5-СТОЛБЕЦ(A1))
О, теперь есть даже два решения ^___^ Вот как здорово! Спасибо огромное =)
Sadja вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
в какой программе это написано? ДеТкА Паскаль, Turbo Pascal, PascalABC.NET 2 13.06.2012 12:12
Pascal. Любо построить график, либо воспроизвести анимацию, либо программу для редактирования анимации bchouse1 Помощь студентам 0 03.04.2012 20:33
Можно ли задать в фомуле имя листа формулой? LLIaMaH Microsoft Office Excel 4 17.02.2011 14:31
поиск последней заполненной ячейки, которая находится выше ячейки с формулой Akmal-Sharipov Microsoft Office Excel 3 11.01.2011 13:27
Задать Аппиар Кейс формулой HellMercenaries Общие вопросы Delphi 2 21.07.2009 02:14