Как определить номер столбца в excel
Argument ‘Topic id’ is null or empty
Сейчас на форуме
© Николай Павлов, Planetaexcel, 2006-2023
info@planetaexcel.ru
Использование любых материалов сайта допускается строго с указанием прямой ссылки на источник, упоминанием названия сайта, имени автора и неизменности исходного текста и иллюстраций.
| ООО «Планета Эксел» ИНН 7735603520 ОГРН 1147746834949 |
ИП Павлов Николай Владимирович ИНН 633015842586 ОГРНИП 310633031600071 |
Как определить номер столбца в excel
← →
маленький мук ( 2006-01-30 08:46 ) [0]
Подскажите пожалуста VBA-функцию, которая бы возвращала номер столбца по его буквенному обозначению? Что-то типа
GetNum(«AJ»)
Пожалуста 🙂
← →
Digitman © ( 2006-01-30 16:36 ) [1]
Columns(«AJ»).Column
← →
Alex Wolf ( 2006-12-05 13:29 ) [2]
А наоборот? Номер столбца -> буквенное обозначение. Или как с помощью Columns и номеров столбцов выделить несколько столбцов?
Память: 0.44 MB
Время: 0.004 c
Определение номера указанной строки или столбца.
Чтобы найти номер указанной строки или столбца можно посчитать столбцы или строки, можно посмотреть номер на координатной сетке «Эксель», но эти способы неприменимы в случаях, когда нужно использовать номер строки или столбца в формулах. Для использования номера столбца или строки в формуле созданы специальные функции, которые называются СТОЛБЕЦ() и СТРОКА(), эти функции находят номер столбца или строки соответственно.
Функция СТОЛБЕЦ() – присваивает ячейке номер столбца.
Функция СТРОКА() – присваивает ячейке номер строки.
Как использовать функции СТОЛБЕЦ() и СТРОКА().
Для начала следует установить курсов в ячейку или формулу, которой будет присвоено значение.
Далее выбрать нужную функцию в мастере функций.
В появившемся диалоговом окне указать ссылку на ячейку координаты, которой будут определяться.
Нажать «ENTER» или «ОК».
Выбранной Вами ячейке будет присвоен номер строки или столбца.
Автор Master Of Exc Опубликовано 16.12.2016 Рубрики Функции
Добавить комментарий Отменить ответ
Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.
Как определить номер столбца в excel
Столбцы в таблице нумеруются буквыми так: A, B, C, . Y, Z, AA, AB, AC, . и т.д.
Задача оптимальным способом по номеру столбца получить его букву. Например:
На любом языке программирования.
целое от деления на 25, потом остаток от деления
через кейс определить буквы
Это называется перевод в другую систему счисления
Ну. Кто первый догадается?
а.. то есть тут призы?
(0)
системы счисления на информатике в школе проходят.
Вам на подростковый форум.
Система счисления с переменной базой — младший разряд 26, а остальные — 27.
В цикле заполнить соответствие.
(6) ТС просто скосячил, в екселе нумерация с 1 а не с 0, так что никакой переменной базы
http://catalog.mista.ru/public/544232/
Можно получить индекс зная смещение символа 64 относительно 1 и 26 разрядную систему
Или можно заполнить колонки
Функция ЗаписатьКолонки(Колонки,НачСтр,Разряд,КоличествоРазрядов,Сравнивать,ПоследняяКолонка)
// Процедура создает колонки которые меньше или равны имени последней колоки
// A,B. AA..ABC
Для сч=КодСимвола(«A») по КодСимвола(«Z») Цикл
НовСтр=НачСтр+Символ(сч);
Если Разряд рез= ЗаписатьКолонки(Колонки,НовСтр,Разряд+1,КоличествоРазрядов,Сравнивать,ПоследняяКолонка);
Если Сравнивать и Рез Тогда
возврат истина
КонецЕсли;
Иначе
Колонки.Добавить(НовСтр,ОписаниеСтроки());
Если Сравнивать и НовСтр=ПоследняяКолонка Тогда
возврат истина
КонецЕсли
КонецЕсли;
КонецЦикла;
возврат ложь;
КонецФункции
// Создадим колонки учитывая разряды
// Например если имя последней колоки ABC то колонки идут по разрядно
//A..Z
//AA..ZZ
//AAA..ABC
КоличествоРазрядов=СтрДлина(ПоследняяКолонка);
Для сч=1 По КоличествоРазрядов Цикл
Сравнивать=сч=КоличествоРазрядов;
рез= ЗаписатьКолонки(Колонки,»»,1,сч,Сравнивать,ПоследняяКолонка);
Если Сравнивать и рез Тогда
возврат;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
Пока правильного ответа нет. Если не считать (10), так как он громоздкий.
лТЗн.Колонки.Получить(Индекс).Имя?
private string GetExcelColumnName(int columnNumber)
<
int dividend = columnNumber;
string columnName = String.Empty;
int modulo;
while (dividend > 0)
<
modulo = (dividend — 1) % 26;
columnName = Convert.ToChar(65 + modulo).ToString() + columnName;
dividend = (int)((dividend — modulo) / 26);
>
(13) Нагуглил. И все равно громоздко, хотя и правильно. Но у меня короче получилось
А переключит нумерацию столбов в экселе почему не хочешь?
Зная что есть ограничение на кол-во столбцов в екселе можно в одну строчку записать, но науя?
(0)А зачем? есксель и цифры прекрасно понимает.Да они наглядне
(16) Ограничение столбцов в последних версиях Excel — 16384. Точно одной строкой получится?
(18) угу всего то максимум 3 буковки
Возвращает номер столбца по заданной ссылке.
Ссылка — это ячейка или интервал ячеек, для которых определяется номер столбца.
Если ссылка опущена, то предполагается, что это ссылка на ячейку, в которой находится сама функция СТОЛБЕЦ.
Если ссылка является интервалом ячеек, и если функция СТОЛБЕЦ введена как горизонтальный массив, то функция СТОЛБЕЦ возвращает номера столбцов в ссылке в виде горизонтального массива.
Ссылка не может ссылаться на несколько областей.
Чтобы этот пример проще было понять, скопируйте его на пустой лист.
Создайте пустую книгу или лист.
Выделите пример в разделе справки. Не выделяйте заголовок строки или столбца.
Выделение примера в справке.
Выделение примера в справке.
Нажмите сочетание клавиш CTRL+C
На листе выделите ячейку A1 и нажмите сочетание клавиш CTRL+V.
Чтобы переключиться между просмотром результатов и просмотром формул, возвращающих эти результаты, нажмите сочетание клавиш CTRL+` (апостроф) или в меню Сервис укажите на пункт Зависимости формул и выберите режим Режим проверки формул.
1
2
3
A B
Формула Описание (результат)
=СТОЛБЕЦ() Столбец в котором отображается формула (1)
=СТОЛБЕЦ(A10) Столбец ссылки (1)
