Excel найти букву столбца

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

Есть формула СТОЛБЕЦ(), она возвращает числовой номер столбца, в моём же случае нужно вернуть букву это столбца, как это сделать?

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

=SUBSTITUTE(ADDRESS(1;COLUMN();4);1;)

Изменено: БМВ10.10.2019 13:10:36

По вопросам из тем форума, личку не читаю.

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

А можно русскую формулу? Я переводчиком перевёл но таких функций у меня нет.

 

Настя_Nastya

Пользователь

Сообщений: 801
Регистрация: 14.07.2019

#4

11.10.2019 20:04:12

Код
=ПСТР(АДРЕС(1;СТОЛБЕЦ();2);1;ДЛСТР(АДРЕС(1;СТОЛБЕЦ();2))-НАЙТИ("$";АДРЕС(1;СТОЛБЕЦ();2)))
 

Светлый

Пользователь

Сообщений: 487
Регистрация: 07.03.2019

#5

11.10.2019 20:08:17

До Z включительно:

Код
=СИМВОЛ(СТОЛБЕЦ()+64)
 

GRIM

Пользователь

Сообщений: 232
Регистрация: 21.09.2016

#6

11.10.2019 20:09:31

Цитата
Tosyan12 написал:
Я переводчиком перевёл но таких функций у меня нет.

Не может такого быть.

Код
=SUBSTITUTE(ADDRESS(1;COLUMN();4);1;)

=

Код
=ПОДСТАВИТЬ(АДРЕС(1;СТОЛБЕЦ();4);1;)
 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

Светлый,  досокращал формулу до результата сокращенного  :D

GRIM, Thanks for adaption and translation :-)

По вопросам из тем форума, личку не читаю.

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

#8

12.10.2019 11:52:34

Цитата
GRIM написал:
ПОДСТАВИТЬ(АДРЕС(1;СТОЛБЕЦ();4);1;)

Помогите составить формулу из 2ух. Значит есть 2 формулы

Код
=ГИПЕРССЫЛКА("#ЛИСТ1!L"&СТРОКА(N35);"►") и =АДРЕС(СТРОКА();СТОЛБЕЦ();4)

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

Прикрепленные файлы

  • Переход.xlsx (9.74 КБ)

 

buchlotnik

Пользователь

Сообщений: 3863
Регистрация: 31.10.2014

Excel 365 Бета-канал

Tosyan12, а какое отношение этот вопрос имеет к заявленной теме?

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Мало того, что никакого, так автор даже не соизволил ответить помогающим — подошли решения или нет?

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

Нет поэтому я спрашиваю как вернуть букву столбца совместив 2 формулы

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#12

12.10.2019 12:00:54

Как вернуть букву — Вам показали, а теперь начинается

Цитата
Tosyan12 написал:
при нажатии на стрелочку вправо можно было попасть на стрелочку влево,

Создавайте новую тему про «стрелочки». А в этой теме неплохо бы поблагодарить тех, кто Вам помогал.

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

#13

12.10.2019 12:29:54

Цитата
Юрий М написал:
Создавайте новую тему про «стрелочки»

Я уже создал 2 и никак, я думал картинки вставить, но тут ограничения на них, создам тогда 3юю тему про стрелочки, я снял видео на фотоаппарат я его в ютуб загружу там я показал что куда оно там стрикает и переходит.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Не нужна третья: у Вас уже есть тема про переход между столбцами.

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

Tosyan12, для стрелочек, галочек, людочек изучите возможности функции адрес и на этом все.

По вопросам из тем форума, личку не читаю.

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

#16

12.10.2019 14:43:06

Цитата
БМВ написал:
для стрелочек, галочек, людочек изучите возможности функции адрес и на этом все

Ну да возможно близко хожу но мозгов не хватает с этим экселем. Я хочу сделать вот такой эффект

https://www.youtube.com/watch?v=So3DBadKLdU&feature=youtu.be

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

Tosyan12, забудьте, что существует кнопка цитирования — она не для Вас. Вы не умеете пользоваться этой кнопкой или не знаете, что такое цитата.

 

Tosyan12

Пользователь

Сообщений: 117
Регистрация: 22.04.2018

#18

12.10.2019 14:52:19

Цитата
Юрий М написал:
забудьте, что существует кнопка цитирования — она не для Вас. Вы не умеете пользоваться этой кнопкой или не знаете, что такое цитата.

Человек мне намекнул про функцию АДРЕС(), я с ней экспериментировал, я написал ответ человеку что не хватает мозгов её применить в моей ситуации

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

 

vikttur

Пользователь

Сообщений: 47199
Регистрация: 15.09.2012

#20

12.10.2019 15:03:50

Бан до понедельника. В понедельник придете — первым делом приведите в порядок сообщения в двух своих темах.

Вы когда-нибудь пытались получить букву строки или столбца текущей ячейки в Excel, как показано ниже? Здесь я ввожу несколько формул для быстрого получения буквы строки или буквы столбца активной ячейки.

Получить букву строки или столбца текущей ячейки


Получить букву строки или столбца текущей ячейки

Получить букву строки текущей ячейки

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

= СИМВОЛ (СТРОКА () + 64)

= ЛЕВЫЙ (АДРЕС (1; СТРОКА (); 2); 1 + (СТРОКА ()> 26))

документ получить букву строки столбца 1

Получить букву столбца текущей ячейки

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

= СИМВОЛ (КОЛОНКА () + 64)

= ЛЕВЫЙ (АДРЕС (1; КОЛОНКА (); 2); 1 + (КОЛОНКА ()> 26))

документ получить букву строки столбца 2


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Комментарии (5)


Номинальный 5 из 5


·


рейтинги 1

Содержание

  1. Функция для преобразования номера столбца в букву?
  2. 27 ответов
  3. Поиск данных в таблице или диапазоне ячеек с помощью встроенных функций Excel
  4. Описание
  5. Создание образца листа
  6. Определения терминов
  7. Функции
  8. LOOKUP ()
  9. INDEX () и MATCH ()
  10. СМЕЩ () и MATCH ()
  11. Как проще всего преобразовать номер столбца Excel в букву столбца?

Функция для преобразования номера столбца в букву?

Есть ли у кого-нибудь функция Excel VBA, которая может возвращать буквенные буквы из числа?

Например, ввод 100 должен возвращать CV .

27 ответов

Эта функция возвращает букву столбца для заданного номера столбца.

код тестирования для столбца 100

Если вы не хотите использовать объект диапазона:

Что-то, что работает для меня, это:

Это вернет ссылку формата $AE $1 для вас.

Еще один способ сделать это. Brettdj answer заставлял меня думать об этом, но если вы используете этот метод, вам не нужно использовать альтернативный массив, вы можете перейти непосредственно к строке.

или может сделать его немного более компактным с этим

Обратите внимание, что это зависит от того, как вы ссылаетесь на строку 1 в объекте ячейки.

И решение с использованием рекурсии:

  • Например: MsgBox Columns( 9347).Address возвращает .

Чтобы возвращать ТОЛЬКО буквенные ( ).Address(,0)),»:»)(0) : Split((Columns( Column Index ).Address(,0)),»:»)(0)

  • Например: MsgBox Split((Columns( 2734).Address(,0)),»:»)(0) возвращает .

Это доступно с помощью формулы:

и поэтому также может быть записана как функция VBA по запросу:

ПОСЛЕДНЕЕ ОБНОВЛЕНИЕ. Пожалуйста, проигнорируйте приведенную ниже функцию, @SurasinTancharoen удалось предупредить меня, что она разбита на n = 53 .
Для тех, кто заинтересован, вот другие сломанные значения чуть ниже n = 200 :

КОНЕЦ ОБНОВЛЕНИЯ

Ниже приведена следующая функция:

  • Microsoft Office Excel 2007
  • Стандартная версия Microsoft Excel 2002
  • Стандартная версия Microsoft Excel 2000
  • Стандартная версия Microsoft Excel 97

Это версия ответа robartsd (с ароматом однострочное решение Jan Wijninckx), используя рекурсию вместо цикла.

Я тестировал это со следующими входами:

код robertsd является элегантным, но для того, чтобы сделать его перспективным, измените объявление n на тип long

Если вам нужна формула, чтобы избежать макросов, вот что работает до столбца 702 включительно

где A1 — ячейка, содержащая номер столбца, который должен быть преобразован в буквы.

Существует очень простой способ использования Excel: используйте свойство Range.Cells.Address , таким образом:

Это вернет адрес нужного столбца в строке 1. Возьмите его 1 :

Обратите внимание, что это так быстро и мощно, что вы можете вернуть адреса столбцов, которые даже существуют!

Замените lngRow на нужный номер столбца, используя свойство Selection.Column !

Это будет работать независимо от того, какой столбец внутри вашей одной строки кода для ячейки, расположенной в строке X, в столбце Y:

Если у вас есть ячейка с уникальным именем «Cellname»:

Вот простой лайнер, который можно использовать.

Он будет работать только для обозначения столбца с 1 буквой, но он хорош для простых случаев. Если вам нужно работать только для двух буквенных обозначений, вы можете использовать следующее:

Это функция, основанная на @DamienFennely answer выше. Если вы дадите мне большие пальцы, дайте ему большие пальцы!: P

Эта формула даст столбец на основе диапазона (т.е. A1), где диапазон — это одна ячейка. Если задан диапазон нескольких ячеек, он вернет верхнюю левую ячейку. Обратите внимание: обе ссылки на ячейки должны быть одинаковыми:

MID (CELL ( «адрес», A1), 2, SEARCH ( «$», CELL ( «адрес», A1), 2) -2)

Как это устроено:

CELL («свойство», «диапазон») возвращает определенное значение диапазона в зависимости от используемого свойства. В этом случае адрес ячейки. Свойство address возвращает значение $ [col] $ [row], то есть A1 → $ A $ 1. Функция MID анализирует значение столбца между символами $.

Здесь простая функция в Pascal (Delphi).

Вот поздний ответ, просто для упрощенного подхода с использованием Int() и If в случае столбцов с 1 символом:

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

Компромисс этой функции заключается в том, что она будет очень немного медленнее, чем ответ brettdj из-за теста IF . Но это можно почувствовать, если функция многократно используется в течение очень большого количества раз.

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

Проблема, с которой я столкнулась, — это прокрутка к определенному столбцу на основе вывода функции MATCH(). Вместо того, чтобы преобразовать номер столбца в параллельную букву столбца, я решил временно переключить стиль ссылки с A1 на R1C1. Таким образом, я мог просто прокрутить до номера столбца, не зациклившись на функции VBA. Чтобы легко переключаться между двумя стилями ссылок, вы можете использовать этот код VBA:

Это только для REFEDIT. вообще использовать код uphere короткая версия. легко читается и понимается/ он использует poz из $

Источник

Поиск данных в таблице или диапазоне ячеек с помощью встроенных функций Excel

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Описание

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

Создание образца листа

В этой статье используется образец листа для иллюстрации встроенных функций Excel. Рассматривайте пример ссылки на имя из столбца A и возвращает возраст этого человека из столбца C. Чтобы создать этот лист, введите указанные ниже данные в пустой лист Excel.

Введите значение, которое вы хотите найти, в ячейку E2. Вы можете ввести формулу в любую пустую ячейку на том же листе.

Определения терминов

В этой статье для описания встроенных функций Excel используются указанные ниже условия.

Вся таблица подстановки

Значение, которое будет найдено в первом столбце аргумента «инфо_таблица».

Просматриваемый_массив
-или-
Лукуп_вектор

Диапазон ячеек, которые содержат возможные значения подстановки.

Номер столбца в аргументе инфо_таблица, для которого должно быть возвращено совпадающее значение.

3 (третий столбец в инфо_таблица)

Ресулт_аррай
-или-
Ресулт_вектор

Диапазон, содержащий только одну строку или один столбец. Он должен быть такого же размера, что и просматриваемый_массив или Лукуп_вектор.

Логическое значение (истина или ложь). Если указано значение истина или опущено, возвращается приближенное соответствие. Если задано значение FALSE, оно будет искать точное совпадение.

Это ссылка, на основе которой вы хотите основать смещение. Топ_целл должен ссылаться на ячейку или диапазон смежных ячеек. В противном случае функция СМЕЩ возвращает #VALUE! значение ошибки #ИМЯ?.

Число столбцов, находящегося слева или справа от которых должна указываться верхняя левая ячейка результата. Например, значение «5» в качестве аргумента Оффсет_кол указывает на то, что верхняя левая ячейка ссылки состоит из пяти столбцов справа от ссылки. Оффсет_кол может быть положительным (то есть справа от начальной ссылки) или отрицательным (то есть слева от начальной ссылки).

Функции

LOOKUP ()

Функция Просмотр находит значение в одной строке или столбце и сопоставляет его со значением в той же позицией в другой строке или столбце.

Ниже приведен пример синтаксиса формулы подСТАНОВКи.

= Просмотр (искомое_значение; Лукуп_вектор; Ресулт_вектор)

Следующая формула находит возраст Марии на листе «образец».

= ПРОСМОТР (E2; A2: A5; C2: C5)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в векторе подстановки (столбец A). Формула затем соответствует значению в той же строке в векторе результатов (столбец C). Так как «Мария» находится в строке 4, функция Просмотр возвращает значение из строки 4 в столбце C (22).

Примечание. Для функции Просмотр необходимо, чтобы таблица была отсортирована.

Чтобы получить дополнительные сведения о функции Просмотр , щелкните следующий номер статьи базы знаний Майкрософт:

Функция ВПР или вертикальный просмотр используется, если данные указаны в столбцах. Эта функция выполняет поиск значения в левом столбце и сопоставляет его с данными в указанном столбце в той же строке. Функцию ВПР можно использовать для поиска данных в отсортированных или несортированных таблицах. В следующем примере используется таблица с несортированными данными.

Ниже приведен пример синтаксиса формулы ВПР :

= ВПР (искомое_значение; инфо_таблица; номер_столбца; интервальный_просмотр)

Следующая формула находит возраст Марии на листе «образец».

= ВПР (E2; A2: C5; 3; ЛОЖЬ)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в левом столбце (столбец A). Формула затем совпадет со значением в той же строке в Колумн_индекс. В этом примере используется «3» в качестве Колумн_индекс (столбец C). Так как «Мария» находится в строке 4, функция ВПР возвращает значение из строки 4 В столбце C (22).

Чтобы получить дополнительные сведения о функции ВПР , щелкните следующий номер статьи базы знаний Майкрософт:

INDEX () и MATCH ()

Вы можете использовать функции индекс и ПОИСКПОЗ вместе, чтобы получить те же результаты, что и при использовании поиска или функции ВПР.

Ниже приведен пример синтаксиса, объединяющего индекс и Match для получения одинаковых результатов поиска и ВПР в предыдущих примерах:

= Индекс (инфо_таблица; MATCH (искомое_значение; просматриваемый_массив; 0); номер_столбца)

Следующая формула находит возраст Марии на листе «образец».

= ИНДЕКС (A2: C5; MATCH (E2; A2: A5; 0); 3)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Затем он будет соответствовать значению в той же строке в столбце C. Так как «Мария» находится в строке 4, формула возвращает значение из строки 4 в столбце C (22).

Обратите внимание Если ни одна из ячеек в аргументе «число» не соответствует искомому значению («Мария»), эта формула будет возвращать #N/А.
Чтобы получить дополнительные сведения о функции индекс , щелкните следующий номер статьи базы знаний Майкрософт:

СМЕЩ () и MATCH ()

Функции СМЕЩ и ПОИСКПОЗ можно использовать вместе, чтобы получить те же результаты, что и функции в предыдущем примере.

Ниже приведен пример синтаксиса, объединяющего смещение и сопоставление для достижения того же результата, что и функция Просмотр и ВПР.

= СМЕЩЕНИЕ (топ_целл, MATCH (искомое_значение; просматриваемый_массив; 0); Оффсет_кол)

Эта формула находит возраст Марии на листе «образец».

= СМЕЩЕНИЕ (A1; MATCH (E2; A2: A5; 0); 2)

Формула использует значение «Мария» в ячейке E2 и находит слово «Мария» в столбце A. Формула затем соответствует значению в той же строке, но двум столбцам справа (столбец C). Так как «Мария» находится в столбце A, формула возвращает значение в строке 4 в столбце C (22).

Чтобы получить дополнительные сведения о функции СМЕЩ , щелкните следующий номер статьи базы знаний Майкрософт:

Источник

Как проще всего преобразовать номер столбца Excel в букву столбца?

Столбцы в таблице нумеруются буквыми так: A, B, C, . Y, Z, AA, AB, AC, . и т.д.

Задача оптимальным способом по номеру столбца получить его букву. Например:

На любом языке программирования.

Ну. Кто первый догадается?

Или можно заполнить колонки

Функция ЗаписатьКолонки(Колонки,НачСтр,Разряд,КоличествоРазрядов,Сравнивать,ПоследняяКолонка)
// Процедура создает колонки которые меньше или равны имени последней колоки
// A,B. AA..ABC
Для сч=КодСимвола(«A») по КодСимвола(«Z») Цикл
НовСтр=НачСтр+Символ(сч);

Если Разряд wormselfish

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);
>

Возвращает номер столбца по заданной ссылке.

Ссылка — это ячейка или интервал ячеек, для которых определяется номер столбца.

Если ссылка опущена, то предполагается, что это ссылка на ячейку, в которой находится сама функция СТОЛБЕЦ.

Если ссылка является интервалом ячеек, и если функция СТОЛБЕЦ введена как горизонтальный массив, то функция СТОЛБЕЦ возвращает номера столбцов в ссылке в виде горизонтального массива.

Ссылка не может ссылаться на несколько областей.

Чтобы этот пример проще было понять, скопируйте его на пустой лист.

Создайте пустую книгу или лист.
Выделите пример в разделе справки. Не выделяйте заголовок строки или столбца.
Выделение примера в справке.

Выделение примера в справке.

Нажмите сочетание клавиш CTRL+C
На листе выделите ячейку A1 и нажмите сочетание клавиш CTRL+V.
Чтобы переключиться между просмотром результатов и просмотром формул, возвращающих эти результаты, нажмите сочетание клавиш CTRL+` (апостроф) или в меню Сервис укажите на пункт Зависимости формул и выберите режим Режим проверки формул.

1
2
3
A B
Формула Описание (результат)
=СТОЛБЕЦ() Столбец в котором отображается формула (1)
=СТОЛБЕЦ(A10) Столбец ссылки (1)

Источник

1 / 1 / 0

Регистрация: 25.11.2014

Сообщений: 9

1

Как найти букву столбца? Или как удалить числа из ячейки?

09.08.2015, 20:09. Показов 2951. Ответов 9


Студворк — интернет-сервис помощи студентам

Доброго дня!

Помогите справиться с задачей

В столбце А приводятся заголовки столбцов, расположенных на листе Данные
В столбец B выводится имя ячейки, например ИМЯ = А1
Надо чтобы в столбце C выводилась буквенное обозначение столбца

Проблема в том, что столбец с заголовком ИМЯ может находится как в ячейке A1, так и в ячейке AZ132
и из этого значения надо получить только буквы, которые соответствуют столбцу — A или AZ

Пример:
Пример буква столбца.xlsx



0



4131 / 2235 / 940

Регистрация: 01.12.2010

Сообщений: 4,624

09.08.2015, 20:52

2

Если в фунции =АДРЕС() использовать третий(необязательный) аргумент Абсолютный номер и указать тип ссылки 2, то вместо AC5 Вы получите AC$5 и сможете найти $ и избавиться от всех символов, начиная с $



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,928

10.08.2015, 11:38

3

а для чего вообще эти манипуляции?



0



1 / 1 / 0

Регистрация: 25.11.2014

Сообщений: 9

10.08.2015, 18:29

 [ТС]

4

Цитата
Сообщение от Vlad999
Посмотреть сообщение

а для чего вообще эти манипуляции?

мне надо задать диапазон для выборки данных из столбца с названием ИМЯ на определенном листе
Примерно такой:
Данные!A:A

Может кончено есть более простое решение, но я о нем не знаю ))

А чтобы удалить из названия ячейки числа в итоге использовал такую формулу:

Код

=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;0;);1;);2;);3;);4;);5;);6;);7;);8;);9;)



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

10.08.2015, 19:04

5

Поподробнее можете разьяснить, для чего задавать такой диапазон, желательно с примером.
Наверняка найдется решение



0



1 / 1 / 0

Регистрация: 25.11.2014

Сообщений: 9

10.08.2015, 19:27

 [ТС]

6

Цитата
Сообщение от Fairuza
Посмотреть сообщение

Поподробнее можете разьяснить, для чего задавать такой диапазон, желательно с примером.
Наверняка найдется решение

Есть отдел продаж, в нем несколько сотрудников
И есть общая база клиентов

Надо по каждому сотруднику посчитать отдельные показатели

Например посчитать количество партнеров по работнику №5, сортируя определенные условия из разных столбцов
Считается у меня это с помощью СЧЕТЕСЛИМН

краткий пример вложил
пример выборка.xlsx



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

10.08.2015, 19:37

7

На мой взгляд, все это проще сделать Фильтром или Сводной таблицей.

При каких условиях, например, у сотрудника 7 получается число 9?



0



1 / 1 / 0

Регистрация: 25.11.2014

Сообщений: 9

10.08.2015, 20:53

 [ТС]

8

Цитата
Сообщение от Fairuza
Посмотреть сообщение

На мой взгляд, все это проще сделать Фильтром или Сводной таблицей.
При каких условиях, например, у сотрудника 7 получается число 9?

сводная — не вариант
т.к. в примере оставил подсчет только в строке Общая База
в нужном файле еще ряд строк, по которым стоят свои «фильтры»

число 9 у сотрудника 7 получается при соблюдении условий:
1.Подчиненность = пусто
2.Участок — <40
3.сотрудник = 7wta



0



132 / 108 / 22

Регистрация: 23.06.2015

Сообщений: 339

10.08.2015, 21:25

9



0



5942 / 3154 / 698

Регистрация: 23.11.2010

Сообщений: 10,524

10.08.2015, 22:34

10

Число 9 для сотрудника 7 можно получить

Код

=СУММПРОИЗВ((TP=Данные!C2:C319)*(Данные!F2:F319<40)*((ДЛСТР(Данные!B2:B319))=0))



0



Формула определения буквы столбца через опред. интервал

Chelovekov

Дата: Суббота, 05.01.2019, 08:31 |
Сообщение № 1

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 235


Репутация:

0

±

Замечаний:
0% ±


Excel 2016

Здравствуйте. гуры Екселя !!! Подскажите пожалуйста можно ли написать формулу, которая будет определяет букву столбца через определенный интервал столбцов. Например: Первый столбец буква А, через пять столбцов от столбца с буквой А, будет F.

Зараннее благодарен.

 

Ответить

Pelena

Дата: Суббота, 05.01.2019, 08:57 |
Сообщение № 2

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Непонятно, что брать в качестве исходных данных. Если просто букву столбца, то

Код

=СИМВОЛ(КОДСИМВ(«A»)+5)


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Nic70y

Дата: Суббота, 05.01.2019, 09:27 |
Сообщение № 3

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

Код

=ПОДСТАВИТЬ(АДРЕС(1;СТОЛБЕЦ()+5;4);1;)


ЮMoney 41001841029809

 

Ответить

Chelovekov

Дата: Суббота, 05.01.2019, 09:42 |
Сообщение № 4

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 235


Репутация:

0

±

Замечаний:
0% ±


Excel 2016

Огромное спасибо hands

 

Ответить

MS Excel columns have a pattern like A, B, C, …, Z, AA, AB, AC, …., AZ, BA, BB, … ZZ, AAA, AAB ….. etc. In other words, column 1 is named “A”, column 2 as “B”, and column 27 as “AA”.
Given a column number, find its corresponding Excel column name. The following are more examples.

Input          Output
 26             Z
 51             AY
 52             AZ
 80             CB
 676            YZ
 702            ZZ
 705            AAC

Thanks to Mrigank Dembla for suggesting the below solution in a comment.
Suppose we have a number n, let’s say 28. so corresponding to it we need to print the column name. We need to take the remainder with 26. 

If the remainder with 26 comes out to be 0 (meaning 26, 52, and so on) then we put ‘Z’ in the output string and new n becomes n/26 -1 because here we are considering 26 to be ‘Z’ while in actuality it’s 25th with respect to ‘A’.

Similarly, if the remainder comes out to be non-zero. (like 1, 2, 3, and so on) then we need to just insert the char accordingly in the string and do n = n/26.

Finally, we reverse the string and print. 

Example: 
n = 700
The remainder (n%26) is 24. So we put ‘X’ in the output string and n becomes n/26 which is 26. 
Remainder (26%26) is 0. So we put ‘Z’ in the output string and n becomes n/26 -1 which is 0.

Following is the implementation of the above approach.

C++

#include <bits/stdc++.h>

#define MAX 50

using namespace std;

void printString(int n)

{

    char str[MAX];

    int i = 0;

    while (n > 0) {

        int rem = n % 26;

        if (rem == 0) {

            str[i++] = 'Z';

            n = (n / 26) - 1;

        }

        else

        {

            str[i++] = (rem - 1) + 'A';

            n = n / 26;

        }

    }

    str[i] = '';

    reverse(str, str + strlen(str));

    cout << str << endl;

    return;

}

int main()

{

    printString(26);

    printString(51);

    printString(52);

    printString(80);

    printString(676);

    printString(702);

    printString(705);

    return 0;

}

Java

public class ExcelColumnTitle {

    private static void printString(int columnNumber)

    {

        StringBuilder columnName = new StringBuilder();

        while (columnNumber > 0) {

            int rem = columnNumber % 26;

            if (rem == 0) {

                columnName.append("Z");

                columnNumber = (columnNumber / 26) - 1;

            }

            else

            {

                columnName.append((char)((rem - 1) + 'A'));

                columnNumber = columnNumber / 26;

            }

        }

        System.out.println(columnName.reverse());

    }

    public static void main(String[] args)

    {

        printString(26);

        printString(51);

        printString(52);

        printString(80);

        printString(676);

        printString(702);

        printString(705);

    }

}

Python

MAX = 50

def printString(n):

    string = [""] * MAX

    i = 0

    while n > 0:

        rem = n % 26

        if rem == 0:

            string[i] = 'Z'

            i += 1

            n = (n / 26) - 1

        else:

            string[i] = chr((rem - 1) + ord('A'))

            i += 1

            n = n / 26

    string[i] = ''

    string = string[::-1]

    print "".join(string)

printString(26)

printString(51)

printString(52)

printString(80)

printString(676)

printString(702)

printString(705)

C#

using System;

class GFG{

static String reverse(String input)

{

    char[] reversedString = input.ToCharArray();

    Array.Reverse(reversedString);

    return new String(reversedString);

}

private static void printString(int columnNumber)

{

    String columnName = "";

    while (columnNumber > 0)

    {

        int rem = columnNumber % 26;

        if (rem == 0)

        {

            columnName += "Z";

            columnNumber = (columnNumber / 26) - 1;

        }

        else

        {

            columnName += (char)((rem - 1) + 'A');

            columnNumber = columnNumber / 26;

        }

    }

    columnName = reverse(columnName);

    Console.WriteLine(columnName.ToString());

}

public static void Main(String[] args)

{

    printString(26);

    printString(51);

    printString(52);

    printString(80);

    printString(676);

    printString(702);

    printString(705);

}

}

Javascript

<script>

function printString(columnNumber)

{

        let columnName = [];

        while (columnNumber > 0) {

            let rem = columnNumber % 26;

            if (rem == 0) {

                columnName.push("Z");

                columnNumber = Math.floor(columnNumber / 26) - 1;

            }

            else

            {

                columnName.push(String.fromCharCode((rem - 1) + 'A'.charCodeAt(0)));

                columnNumber = Math.floor(columnNumber / 26);

            }

        }

        document.write(columnName.reverse().join("")+"<br>");

}

printString(26);

printString(51);

printString(52);

printString(80);

printString(676);

printString(702);

printString(705);

</script>

Output

Z
AY
AZ
CB
YZ
ZZ
AAC

Time Complexity: O(log26n), as we are using a loop and in each traversal, we decrement by floor division of 26.

Auxiliary Space: O(50), as we are using extra space for storing the result.
Method 2 
The problem is similar to converting a decimal number to its binary representation but instead of a binary base system where we have two digits only 0 and 1, here we have 26 characters from A-Z.
So, we are dealing with base 26 instead of base binary. 
That’s not where the fun ends, we don’t have zero in this number system, as A represents 1, B represents 2 and so on Z represents 26. 
To make the problem easily understandable, we approach the problem in two steps:

  1. Convert the number to base 26 representation, considering we have 0 also in the system.
  2. Change the representation to the one without having 0 in its system.

HOW? Here is an example

Step 1: 
Consider we have number 676, How to get its representation in the base 26 system? In the same way, we do for a binary system, Instead of division and remainder by 2, we do division and remainder by 26.

Base 26 representation of 676 is : 100 

Step2
But Hey, we can’t have zero in our representation. Right? Because it’s not part of our number system. How do we get rid of zero? Well it’s simple, but before doing that let’s remind one simple math trick:

Subtraction: 
5000 - 9, How do you subtract 9 from 0 ? You borrow
from next significant bit, right.  
  • In a decimal number system to deal with zero, we borrow 10 and subtract 1 from the next significant.
  • In the Base 26 Number System to deal with zero, we borrow 26 and subtract 1 from the next significant bit.

So Convert 10026 to a number system that does not have ‘0’, we get (25 26)26 
Symbolic representation of the same is: YZ 

Here is the implementation of the same:

C++

#include <iostream>

using namespace std;

void printString(int n)

{

    int arr[10000];

    int i = 0;

    while (n) {

        arr[i] = n % 26;

        n = n / 26;

        i++;

    }

    for (int j = 0; j < i - 1; j++) {

        if (arr[j] <= 0) {

            arr[j] += 26;

            arr[j + 1] = arr[j + 1] - 1;

        }

    }

    for (int j = i; j >= 0; j--) {

        if (arr[j] > 0)

            cout << char('A' + arr[j] - 1);

    }

    cout << endl;

}

int main()

{

    printString(26);

    printString(51);

    printString(52);

    printString(80);

    printString(676);

    printString(702);

    printString(705);

    return 0;

}

Java

import java.util.*;

class GFG{

static void printString(int n)

{

    int []arr = new int[10000];

    int i = 0;

    while (n > 0)

    {

        arr[i] = n % 26;

        n = n / 26;

        i++;

    }

    for(int j = 0; j < i - 1; j++)

    {

        if (arr[j] <= 0)

        {

            arr[j] += 26;

            arr[j + 1] = arr[j + 1] - 1;

        }

    }

    for(int j = i; j >= 0; j--)

    {

        if (arr[j] > 0)

            System.out.print(

                (char)('A' + arr[j] - 1));

    }

    System.out.println();

}

public static void main(String[] args)

{

    printString(26);

    printString(51);

    printString(52);

    printString(80);

    printString(676);

    printString(702);

    printString(705);

}

}

Python3

def printString(n):

    arr = [0] * 10000

    i = 0

    while (n > 0):

        arr[i] = n % 26

        n = int(n // 26)

        i += 1

    for j in range(0, i - 1):

        if (arr[j] <= 0):

            arr[j] += 26

            arr[j + 1] = arr[j + 1] - 1

    for j in range(i, -1, -1):

        if (arr[j] > 0):

            print(chr(ord('A') +

                  (arr[j] - 1)), end = "");

    print();

if __name__ == '__main__':

    printString(26);

    printString(51);

    printString(52);

    printString(80);

    printString(676);

    printString(702);

    printString(705);

C#

using System;

class GFG{

static void printString(int n)

{

  int []arr = new int[10000];

  int i = 0;

  while (n > 0)

  {

    arr[i] = n % 26;

    n = n / 26;

    i++;

  }

  for(int j = 0; j < i - 1; j++)

  {

    if (arr[j] <= 0)

    {

      arr[j] += 26;

      arr[j + 1] = arr[j + 1] - 1;

    }

  }

  for(int j = i; j >= 0; j--)

  {

    if (arr[j] > 0)

      Console.Write((char)('A' +

                     arr[j] - 1));

  }

  Console.WriteLine();

}

public static void Main(String[] args)

{

  printString(26);

  printString(51);

  printString(52);

  printString(80);

  printString(676);

  printString(702);

  printString(705);

}

}

Javascript

<script>

function printString(n){

    let arr = [];

    let i = 0;

    while (n) {

        arr[i] = n % 26;

        n = Math.floor(n / 26);

        i++;

    }

    for (let j = 0; j < i - 1; j++) {

        if (arr[j] <= 0) {

            arr[j] += 26;

            arr[j + 1] = arr[j + 1] - 1;

        }

    }

    let ans = '';

    for (let j = i; j >= 0; j--) {

        if (arr[j] > 0)

            ans += String.fromCharCode(65 + arr[j] - 1);

    }

    document.write(ans + "<br>");

}

printString(26);

printString(51);

printString(52);

printString(80);

printString(676);

printString(702);

printString(705);

</script>

Output

Z
AY
AZ
CB
YZ
ZZ
AAC

Time Complexity: O(log26n), as we are using a loop and in each traversal, we decrement by floor division of 26.

Auxiliary Space: O(10000), as we are using extra space for the array.

Method 3:

We can use a recursive function which definitely reduces the time and  increase the efficiency:

Alphabets are in sequential order like: ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’. You have experienced while using excel when you see columns and rows numbering are done in  Alphabetical ways.

Here’s How I purposefully think about the logic of how it is arranged.

(In Mathematical  terms, [a , b ] means from ‘a’ to ‘b’).

[1,26] = [A,Z] (Understand by ‘1’ stands for ‘A’ and ’26” stands for “Z”). For [27,52] ,it will be like [AA,AZ], For [57,78] it will be [BA,BZ]

Logic is to append an Alphabet sequentially whenever it ends up numbering at 26.

For example, if the number is ’27’ which is greater than  ’26’, then we simply need to divide by 26, and we get the remainder as 1, We see “1” as “A” and can be recursively done.

we will be using python for this.

Algorithm is:

1. Take an array and Sort the letters from A to Z . (You can also use the import string and string function to get “A to Z” in uppercase.)

2. If the number is less than or equal to ’26’, simply get the letter from the array and print it.

3. If it is greater than 26, use the Quotient  Remainder rule, if the remainder is zero, there are 2 possible ways, if the quotient is “1”, simply hash out the letter from the index [r-1]( ‘r’ is remainder), else call out the function from the num =(q-1) and append at the front to the letter indexing [r-1].

4. If the remainder is not equal to “0”, call the function for the num = (q) and append at the front to the letter indexing [r-1].

The code concerned with this is:

C++

#include<bits/stdc++.h>

using namespace std;

string alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

string num_hash(int num){

    if(num < 26){

      string res = "";

      res += alpha[num-1];

      return res;

    }

    else{

      int q = (num / 26);

      int r = num % 26;

      string res = "";

      if(r == 0){

        if(q == 1){

          res.append(1,alpha[(26 + r-1)%26]);

        }

        else{

          res = num_hash(q-1);

          res.append(1,alpha[(26 + r-1)%26]);

        }

      }

      else{

        res = num_hash(q);

        res.append(1,alpha[(26 + r-1)%26]);

      }

      return res;

    }

}

int main () {

    cout<< num_hash(26) << endl;

    cout<< num_hash(51) << endl;

    cout<< num_hash(52) << endl;

    cout<< num_hash(80) << endl;

    cout<< num_hash(676) << endl;

    cout<< num_hash(702) << endl;

    cout<< num_hash(705) << endl;

    return 0;

}

Java

import java.io.*;

class GFG

{

  static String alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

  static String num_hash(int num){

    if(num < 26)

      return Character.toString(alpha.charAt(num-1));

    else{

      int q = Math.floorDiv(num, 26);

      int r = num % 26;

      if(r == 0){

        if(q == 1){

          return Character.toString(alpha.charAt((26 + r-1)%26));

        }

        else

          return num_hash(q-1) + alpha.charAt((26 + r-1)%26);

      }

      else

        return num_hash(q) + alpha.charAt((26 + r-1)%26);

    }

  }

  public static void main (String[] args) {

    System.out.println(num_hash(26));

    System.out.println(num_hash(51));

    System.out.println(num_hash(52));

    System.out.println(num_hash(80));

    System.out.println(num_hash(676));

    System.out.println(num_hash(702));

    System.out.println(num_hash(705));

  }

}

Python3

alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

def num_hash(num):

    if num < 26:

        return alpha[num-1]

    else:

        q, r = num//26, num % 26

        if r == 0:

            if q == 1:

                return alpha[r-1]

            else:

                return num_hash(q-1) + alpha[r-1]

        else:

            return num_hash(q) + alpha[r-1]

print(num_hash(26))

print(num_hash(51))

print(num_hash(52))

print(num_hash(80))

print(num_hash(676))

print(num_hash(702))

print(num_hash(705))

C#

using System;

class GFG

{

static string alpha = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

static string num_hash(int num){

    if(num < 26)

    return Char.ToString(alpha[num-1]);

    else{

    int q = num/26;

    int r = num % 26;

    if(r == 0){

        if(q == 1){

        return Char.ToString(alpha[(26 + r-1)%26]);

        }

        else

        return num_hash(q-1) + alpha[(26 + r-1)%26];

    }

    else

        return num_hash(q) + alpha[(26 + r-1)%26];

    }

}

public static void Main(String[] args) {

    Console.WriteLine(num_hash(26));

    Console.WriteLine(num_hash(51));

    Console.WriteLine(num_hash(52));

    Console.WriteLine(num_hash(80));

    Console.WriteLine(num_hash(676));

    Console.WriteLine(num_hash(702));

    Console.WriteLine(num_hash(705));

}

}

Javascript

<script>

let alpha = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

function num_hash(num)

{

    if(num < 26)

        return alpha[num-1]

    else{

        let q = Math.floor(num/26),r = num % 26

        if(r == 0){

            if(q == 1)

                return alpha[(26 + r-1)]

            else

                return num_hash(q-1) + alpha[(26 + r-1)]

        }

        else

            return num_hash(q) + alpha[r-1]

    }

}

document.write(num_hash(26),"</br>")

document.write(num_hash(51),"</br>")

document.write(num_hash(52),"</br>")

document.write(num_hash(80),"</br>")

document.write(num_hash(676),"</br>")

document.write(num_hash(702),"</br>")

document.write(num_hash(705),"</br>")

</script>

Output

Z
AY
AZ
CB
YZ
ZZ
AAC

Time Complexity: O(log26n), as we are using recursion and in each recursive call, we decrement by floor division of 26.

Auxiliary Space: O(1), as we are not using any extra space.
Related Article : 
Find the Excel column number from the column title
This article is contributed by Kartik. Please write comments if you find anything incorrect, or if you want to share more information about the topic discussed above.

This function returns the column letter for a given column number.

Function Col_Letter(lngCol As Long) As String
    Dim vArr
    vArr = Split(Cells(1, lngCol).Address(True, False), "$")
    Col_Letter = vArr(0)
End Function

testing code for column 100

Sub Test()
    MsgBox Col_Letter(100)
End Sub

Stevoisiak's user avatar

Stevoisiak

22.8k27 gold badges122 silver badges219 bronze badges

answered Oct 9, 2012 at 9:44

brettdj's user avatar

5

If you’d rather not use a range object:

Function ColumnLetter(ColumnNumber As Long) As String
    Dim n As Long
    Dim c As Byte
    Dim s As String

    n = ColumnNumber
    Do
        c = ((n - 1) Mod 26)
        s = Chr(c + 65) & s
        n = (n - c)  26
    Loop While n > 0
    ColumnLetter = s
End Function

answered Mar 12, 2013 at 16:37

robartsd's user avatar

robartsdrobartsd

1,3901 gold badge9 silver badges15 bronze badges

7

Something that works for me is:

Cells(Row,Column).Address 

This will return the $AE$1 format reference for you.

answered Nov 21, 2013 at 21:00

Damian Fennelly's user avatar

2

I'm surprised nobody suggested:   Columns(Column Index).Address

  • For example: MsgBox Columns( 9347 ).Address returns $MUM:$MUM.

To return ONLY the column letter(s): Split((Columns(Column Index).Address(,0)),":")(0)

  • For example: MsgBox Split((Columns( 2734 ).Address(,0)),":")(0) returns DAD.

  More Examples


answered Mar 30, 2018 at 15:22

ashleedawg's user avatar

ashleedawgashleedawg

20k8 gold badges73 silver badges104 bronze badges

2

And a solution using recursion:

Function ColumnNumberToLetter(iCol As Long) As String

    Dim lAlpha As Long
    Dim lRemainder As Long

    If iCol <= 26 Then
        ColumnNumberToLetter = Chr(iCol + 64)
    Else
        lRemainder = iCol Mod 26
        lAlpha = Int(iCol / 26)
        If lRemainder = 0 Then
            lRemainder = 26
            lAlpha = lAlpha - 1
        End If
        ColumnNumberToLetter = ColumnNumberToLetter(lAlpha) & Chr(lRemainder + 64)
    End If

End Function

answered Nov 27, 2013 at 10:31

Nikolay Ivanov's user avatar

Nikolay IvanovNikolay Ivanov

5,1191 gold badge26 silver badges22 bronze badges

5

Just one more way to do this. Brettdj’s answer made me think of this, but if you use this method you don’t have to use a variant array, you can go directly to a string.

ColLtr = Cells(1, ColNum).Address(True, False)
ColLtr = Replace(ColLtr, "$1", "")

or can make it a little more compact with this

ColLtr = Replace(Cells(1, ColNum).Address(True, False), "$1", "")

Notice this does depend on you referencing row 1 in the cells object.

Stevoisiak's user avatar

Stevoisiak

22.8k27 gold badges122 silver badges219 bronze badges

answered May 23, 2014 at 15:22

OSUZorba's user avatar

OSUZorbaOSUZorba

1,07911 silver badges13 bronze badges

0

This is available through using a formula:

=SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1","")

and so also can be written as a VBA function as requested:

Function ColName(colNum As Integer) As String
    ColName = Split(Worksheets(1).Cells(1, colNum).Address, "$")(1)
End Function

answered Dec 9, 2014 at 12:08

Alistair Collins's user avatar

Alistair CollinsAlistair Collins

2,2005 gold badges25 silver badges44 bronze badges

This is a version of robartsd’s answer (with the flavor of Jan Wijninckx’s one line solution), using recursion instead of a loop.

Public Function ColumnLetter(Column As Integer) As String
    If Column < 1 Then Exit Function
    ColumnLetter = ColumnLetter(Int((Column - 1) / 26)) & Chr(((Column - 1) Mod 26) + Asc("A"))
End Function

I’ve tested this with the following inputs:

1   => "A"
26  => "Z"
27  => "AA"
51  => "AY"
702 => "ZZ"
703 => "AAA" 
-1  => ""
-234=> ""

Stevoisiak's user avatar

Stevoisiak

22.8k27 gold badges122 silver badges219 bronze badges

answered Feb 4, 2015 at 16:18

alexanderbird's user avatar

alexanderbirdalexanderbird

3,7071 gold badge24 silver badges35 bronze badges

2

robertsd’s code is elegant, yet to make it future-proof, change the declaration of n to type long

In case you want a formula to avoid macro’s, here is something that works up to column 702 inclusive

=IF(A1>26,CHAR(INT((A1-1)/26)+64),"")&CHAR(MOD(A1-1,26)+65)

where A1 is the cell containing the column number to be converted to letters.

Stevoisiak's user avatar

Stevoisiak

22.8k27 gold badges122 silver badges219 bronze badges

answered Feb 17, 2014 at 3:29

Jan Wijninckx's user avatar

1

This is a function based on @DamienFennelly’s answer above. If you give me a thumbs up, give him a thumbs up too! :P

Function outColLetterFromNumber(iCol as Integer) as String
    sAddr = Cells(1, iCol).Address
    aSplit = Split(sAddr, "$")
    outColLetterFromNumber = aSplit(1)
End Function

Stevoisiak's user avatar

Stevoisiak

22.8k27 gold badges122 silver badges219 bronze badges

answered Mar 20, 2014 at 18:43

BrettFromLA's user avatar

BrettFromLABrettFromLA

9061 gold badge7 silver badges17 bronze badges

2

There is a very simple way using Excel power: Use Range.Cells.Address property, this way:

strCol = Cells(1, lngRow).Address(xlRowRelative, xlColRelative)

This will return the address of the desired column on row 1. Take it of the 1:

strCol = Left(strCol, len(strCol) - 1)

Note that it so fast and powerful that you can return column addresses that even exists!

Substitute lngRow for the desired column number using Selection.Column property!

Niall's user avatar

Niall

29.8k10 gold badges100 silver badges140 bronze badges

answered Jul 29, 2014 at 12:39

flaviomorgado's user avatar

Here is a simple one liner that can be used.

ColumnLetter = Mid(Cells(Row, LastColA).Address, 2, 1)

It will only work for a 1 letter column designation, but it is nice for simple cases. If you need it to work for exclusively 2 letter designations, then you could use the following:

ColumnLetter = Mid(Cells(Row, LastColA).Address, 2, 2)

answered Aug 26, 2014 at 14:15

Syd B's user avatar

Syd BSyd B

211 bronze badge

This will work regardless of what column inside your one code line for cell thats located in row X, in column Y:

Mid(Cells(X,Y).Address, 2, instr(2,Cells(X,Y).Address,"$")-2)

If you have a cell with unique defined name «Cellname»:

Mid(Cells(1,val(range("Cellname").Column)).Address, 2, instr(2,Cells(1,val(range("Cellname").Column)).Address,"$")-2)

answered Nov 5, 2014 at 17:30

Codeplayer's user avatar

So I’m late to the party here, but I want to contribute another answer that no one else has addressed yet that doesn’t involve arrays. You can do it with simple string manipulation.

Function ColLetter(Col_Index As Long) As String

    Dim ColumnLetter As String

    'Prevent errors; if you get back a number when expecting a letter, 
    '    you know you did something wrong.
    If Col_Index <= 0 Or Col_Index >= 16384 Then
        ColLetter = 0
        Exit Function
    End If

    ColumnLetter = ThisWorkbook.Sheets(1).Cells(1, Col_Index).Address     'Address in $A$1 format
    ColumnLetter = Mid(ColumnLetter, 2, InStr(2, ColumnLetter, "$") - 2)  'Extracts just the letter

    ColLetter = ColumnLetter
End Sub

After you have the input in the format $A$1, use the Mid function, start at position 2 to account for the first $, then you find where the second $ appears in the string using InStr, and then subtract 2 off to account for that starting position.

This gives you the benefit of being adaptable for the whole range of possible columns. Therefore, ColLetter(1) gives back «A», and ColLetter(16384) gives back «XFD», which is the last possible column for my Excel version.

answered Dec 27, 2018 at 23:51

SandPiper's user avatar

SandPiperSandPiper

2,7765 gold badges32 silver badges49 bronze badges

Easy way to get the column name

Sub column()

cell=cells(1,1)
column = Replace(cell.Address(False, False), cell.Row, "")
msgbox column

End Sub

I hope it helps =)

answered Nov 11, 2014 at 12:09

cristobal's user avatar

The solution from brettdj works fantastically, but if you are coming across this as a potential solution for the same reason I was, I thought that I would offer my alternative solution.

The problem I was having was scrolling to a specific column based on the output of a MATCH() function. Instead of converting the column number to its column letter parallel, I chose to temporarily toggle the reference style from A1 to R1C1. This way I could just scroll to the column number without having to muck with a VBA function. To easily toggle between the two reference styles, you can use this VBA code:

Sub toggle_reference_style()

If Application.ReferenceStyle = xlR1C1 Then
  Application.ReferenceStyle = xlA1
Else
  Application.ReferenceStyle = xlR1C1
End If

End Sub

answered Feb 12, 2015 at 18:07

Will Ediger's user avatar

Will EdigerWill Ediger

8939 silver badges17 bronze badges

Furthering on brettdj answer, here is to make the input of column number optional. If the column number input is omitted, the function returns the column letter of the cell that calls to the function. I know this can also be achieved using merely ColumnLetter(COLUMN()), but i thought it’d be nice if it can cleverly understand so.

Public Function ColumnLetter(Optional ColumnNumber As Long = 0) As String
    If ColumnNumber = 0 Then
        ColumnLetter = Split(Application.Caller.Address(True, False, xlA1), "$")(0)
    Else
        ColumnLetter = Split(Cells(1, ColumnNumber).Address(True, False, xlA1), "$")(0)
    End If
End Function

The trade off of this function is that it would be very very slightly slower than brettdj’s answer because of the IF test. But this could be felt if the function is repeatedly used for very large amount of times.

answered Mar 19, 2016 at 4:52

Rosetta's user avatar

RosettaRosetta

2,6251 gold badge12 silver badges28 bronze badges

Here is a late answer, just for simplistic approach using Int() and If in case of 1-3 character columns:

Function outColLetterFromNumber(i As Integer) As String

    If i < 27 Then       'one-letter
        col = Chr(64 + i)
    ElseIf i < 677 Then  'two-letter
        col = Chr(64 + Int(i / 26)) & Chr(64 + i - (Int(i / 26) * 26))
    Else                 'three-letter
        col = Chr(64 + Int(i / 676)) & Chr(64 + Int(i - Int(i / 676) * 676) / 26)) & Chr(64 + i - (Int(i - Int(i / 676) * 676) / 26) * 26))
    End If

    outColLetterFromNumber = col

End Function

answered May 28, 2016 at 21:56

ib11's user avatar

ib11ib11

2,5203 gold badges20 silver badges54 bronze badges

Function fColLetter(iCol As Integer) As String
  On Error GoTo errLabel
  fColLetter = Split(Columns(lngCol).Address(, False), ":")(1)
  Exit Function
errLabel:
  fColLetter = "%ERR%"
End Function

answered Mar 4, 2017 at 22:36

Krzysztof's user avatar

Here, a simple function in Pascal (Delphi).

function GetColLetterFromNum(Sheet : Variant; Col : Integer) : String;
begin
  Result := Sheet.Columns[Col].Address;  // from Col=100 --> '$CV:$CV'
  Result := Copy(Result, 2, Pos(':', Result) - 2);
end;

answered Sep 8, 2017 at 11:00

Jordi's user avatar

JordiJordi

215 bronze badges

This formula will give the column based on a range (i.e., A1), where range is a single cell. If a multi-cell range is given it will return the top-left cell. Note, both cell references must be the same:

MID(CELL(«address»,A1),2,SEARCH(«$»,CELL(«address»,A1),2)-2)

How it works:

CELL(«property»,»range») returns a specific value of the range depending on the property used. In this case the cell address.
The address property returns a value $[col]$[row], i.e. A1 -> $A$1.
The MID function parses out the column value between the $ symbols.

answered Jan 31, 2018 at 18:49

Thom's user avatar

ThomThom

212 bronze badges

Sub GiveAddress()
    Dim Chara As String
    Chara = ""
    Dim Num As Integer
    Dim ColNum As Long
    ColNum = InputBox("Input the column number")

    Do
        If ColNum < 27 Then
            Chara = Chr(ColNum + 64) & Chara
            Exit Do
        Else
            Num = ColNum / 26
            If (Num * 26) > ColNum Then Num = Num - 1
            If (Num * 26) = ColNum Then Num = ((ColNum - 1) / 26) - 1
            Chara = Chr((ColNum - (26 * Num)) + 64) & Chara
            ColNum = Num
        End If
    Loop

    MsgBox "Address is '" & Chara & "'."
End Sub

Sebastian Brosch's user avatar

answered Feb 4, 2016 at 11:16

Chetan V.'s user avatar

Column letter from column number can be extracted using formula by following steps
1. Calculate the column address using ADDRESS formula
2. Extract the column letter using MID and FIND function

Example:
1. ADDRESS(1000,1000,1)
results $ALL$1000
2. =MID(F15,2,FIND(«$»,F15,2)-2)
results ALL asuming F15 contains result of step 1

In one go we can write
MID(ADDRESS(1000,1000,1),2,FIND(«$»,ADDRESS(1000,1000,1),2)-2)

answered Sep 22, 2015 at 20:54

Bhanu Sinha's user avatar

Bhanu SinhaBhanu Sinha

1,51612 silver badges10 bronze badges

this is only for REFEDIT … generaly use uphere code
shortly version… easy to be read and understood /
it use poz of $

Private Sub RefEdit1_Change()

    Me.Label1.Caption = NOtoLETTER(RefEdit1.Value) ' you may assign to a variable  var=....'

End Sub

Function NOtoLETTER(REFedit)

    Dim First As Long, Second As Long

    First = InStr(REFedit, "$")                 'first poz of $
    Second = InStr(First + 1, REFedit, "$")     'second poz of $

    NOtoLETTER = Mid(REFedit, First + 1, Second - First - 1)   'extract COLUMN LETTER

End Function

Tunaki's user avatar

Tunaki

131k46 gold badges330 silver badges415 bronze badges

answered Mar 19, 2016 at 17:02

Gabriel V's user avatar

answered Mar 30, 2016 at 9:31

PEDRO COUTO's user avatar

0

what about just converting to the ascii number and using Chr() to convert back to a letter?

col_letter = Chr(Selection.Column + 96)

answered Jul 15, 2016 at 15:41

beef_supreme's user avatar

0

Эта функция возвращает букву столбца для заданного номера столбца.

Function Col_Letter(lngCol As Long) As String
    Dim vArr
    vArr = Split(Cells(1, lngCol).Address(True, False), "$")
    Col_Letter = vArr(0)
End Function

код тестирования для столбца 100

Sub Test()
    MsgBox Col_Letter(100)
End Sub

brettdj
09 окт. 2012, в 10:03

Поделиться

Если вы не хотите использовать объект диапазона:

Function ColumnLetter(ColumnNumber As Long) As String
    Dim n As Long
    Dim c As Byte
    Dim s As String

    n = ColumnNumber
    Do
        c = ((n - 1) Mod 26)
        s = Chr(c + 65) & s
        n = (n - c)  26
    Loop While n > 0
    ColumnLetter = s
End Function

robartsd
12 март 2013, в 17:44

Поделиться

Что-то, что работает для меня, это:

Cells(Row,Column).Address 

Это вернет ссылку формата $AE $1 для вас.

Damian Fennelly
21 нояб. 2013, в 22:25

Поделиться

Еще один способ сделать это. Brettdj answer заставлял меня думать об этом, но если вы используете этот метод, вам не нужно использовать альтернативный массив, вы можете перейти непосредственно к строке.

ColLtr = Cells(1, ColNum).Address(True, False)
ColLtr = Replace(ColLtr, "$1", "")

или может сделать его немного более компактным с этим

ColLtr = Replace(Cells(1, ColNum).Address(True, False), "$1", "")

Обратите внимание, что это зависит от того, как вы ссылаетесь на строку 1 в объекте ячейки.

OSUZorba
23 май 2014, в 16:01

Поделиться

И решение с использованием рекурсии:

Function ColumnNumberToLetter(iCol As Long) As String

    Dim lAlpha As Long
    Dim lRemainder As Long

    If iCol <= 26 Then
        ColumnNumberToLetter = Chr(iCol + 64)
    Else
        lRemainder = iCol Mod 26
        lAlpha = Int(iCol / 26)
        If lRemainder = 0 Then
            lRemainder = 26
            lAlpha = lAlpha - 1
        End If
        ColumnNumberToLetter = ColumnNumberToLetter(lAlpha) & Chr(lRemainder + 64)
    End If

End Function

Nikolay Ivanov
27 нояб. 2013, в 11:26

Поделиться

Изображение 3720

  • Например: MsgBox Columns( 9347).Address возвращает Изображение 3721.

Чтобы возвращать ТОЛЬКО буквенные ( ).Address(,0)),":")(0): Split((Columns( Column Index ).Address(,0)),":")(0)

  • Например: MsgBox Split((Columns( 2734).Address(,0)),":")(0) возвращает Изображение 3722.

Изображение 3723


ashleedawg
30 март 2018, в 15:55

Поделиться

Это доступно с помощью формулы:

=SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1","")

и поэтому также может быть записана как функция VBA по запросу:

Function ColName(colNum As Integer) As String
    ColName = Split(Worksheets(1).Cells(1, colNum).Address, "$")(1)
End Function

Alistair Collins
09 дек. 2014, в 13:32

Поделиться

Это версия ответа robartsd (с ароматом однострочное решение Jan Wijninckx), используя рекурсию вместо цикла.

Public Function ColumnLetter(Column As Integer) As String
    If Column < 1 Then Exit Function
    ColumnLetter = ColumnLetter(Int((Column - 1) / 26)) & Chr(((Column - 1) Mod 26) + Asc("A"))
End Function

Я тестировал это со следующими входами:

1   => "A"
26  => "Z"
27  => "AA"
51  => "AY"
702 => "ZZ"
703 => "AAA" 
-1  => ""
-234=> ""

alexanderbird
04 фев. 2015, в 17:30

Поделиться

код robertsd является элегантным, но для того, чтобы сделать его перспективным, измените объявление n на тип long

Если вам нужна формула, чтобы избежать макросов, вот что работает до столбца 702 включительно

=IF(A1>26,CHAR(INT((A1-1)/26)+64),"")&CHAR(MOD(A1-1,26)+65)

где A1 — ячейка, содержащая номер столбца, который должен быть преобразован в буквы.

Jan Wijninckx
17 фев. 2014, в 04:18

Поделиться

Существует очень простой способ использования Excel: используйте свойство Range.Cells.Address, таким образом:

strCol = Cells(1, lngRow).Address(xlRowRelative, xlColRelative)

Это вернет адрес нужного столбца в строке 1. Возьмите его 1:

strCol = Left(strCol, len(strCol) - 1)

Обратите внимание, что это так быстро и мощно, что вы можете вернуть адреса столбцов, которые даже существуют!

Замените lngRow на нужный номер столбца, используя свойство Selection.Column!

flaviomorgado
29 июль 2014, в 13:45

Поделиться

Это будет работать независимо от того, какой столбец внутри вашей одной строки кода для ячейки, расположенной в строке X, в столбце Y:

Mid(Cells(X,Y).Address, 2, instr(2,Cells(X,Y).Address,"$")-2)

Если у вас есть ячейка с уникальным именем «Cellname»:

Mid(Cells(1,val(range("Cellname").Column)).Address, 2, instr(2,Cells(1,val(range("Cellname").Column)).Address,"$")-2)

Codeplayer
05 нояб. 2014, в 18:56

Поделиться

Вот простой лайнер, который можно использовать.

ColumnLetter = Mid(Cells(Row, LastColA).Address, 2, 1)

Он будет работать только для обозначения столбца с 1 буквой, но он хорош для простых случаев. Если вам нужно работать только для двух буквенных обозначений, вы можете использовать следующее:

ColumnLetter = Mid(Cells(Row, LastColA).Address, 2, 2)

Syd B
26 авг. 2014, в 14:46

Поделиться

Это функция, основанная на @DamienFennely answer выше. Если вы дадите мне большие пальцы, дайте ему большие пальцы!: P

Function outColLetterFromNumber(iCol as Integer) as String
    sAddr = Cells(1, iCol).Address
    aSplit = Split(sAddr, "$")
    outColLetterFromNumber = aSplit(1)
End Function

BrettFromLA
20 март 2014, в 20:23

Поделиться

Эта формула даст столбец на основе диапазона (т.е. A1), где диапазон — это одна ячейка. Если задан диапазон нескольких ячеек, он вернет верхнюю левую ячейку. Обратите внимание: обе ссылки на ячейки должны быть одинаковыми:

MID (CELL ( «адрес», A1), 2, SEARCH ( «$», CELL ( «адрес», A1), 2) -2)

Как это устроено:

CELL («свойство», «диапазон») возвращает определенное значение диапазона в зависимости от используемого свойства. В этом случае адрес ячейки. Свойство address возвращает значение $ [col] $ [row], то есть A1 → $ A $ 1. Функция MID анализирует значение столбца между символами $.

Thom
31 янв. 2018, в 19:40

Поделиться

Здесь простая функция в Pascal (Delphi).

function GetColLetterFromNum(Sheet : Variant; Col : Integer) : String;
begin
  Result := Sheet.Columns[Col].Address;  // from Col=100 --> '$CV:$CV'
  Result := Copy(Result, 2, Pos(':', Result) - 2);
end;

Jordi
08 сен. 2017, в 12:47

Поделиться

Function fColLetter(iCol As Integer) As String
  On Error GoTo errLabel
  fColLetter = Split(Columns(lngCol).Address(, False), ":")(1)
  Exit Function
errLabel:
  fColLetter = "%ERR%"
End Function

Krzysztof
04 март 2017, в 23:43

Поделиться

Вот поздний ответ, просто для упрощенного подхода с использованием Int() и If в случае столбцов с 1 символом:

Function outColLetterFromNumber(i As Integer) As String

    If i < 27 Then       'one-letter
        col = Chr(64 + i)
    ElseIf i < 677 Then  'two-letter
        col = Chr(64 + Int(i / 26)) & Chr(64 + i - (Int(i / 26) * 26))
    Else                 'three-letter
        col = Chr(64 + Int(i / 676)) & Chr(64 + Int(i - Int(i / 676) * 676) / 26)) & Chr(64 + i - (Int(i - Int(i / 676) * 676) / 26) * 26))
    End If

    outColLetterFromNumber = col

End Function

ib11
28 май 2016, в 22:56

Поделиться

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

Public Function ColumnLetter(Optional ColumnNumber As Long = 0) As String
    If ColumnNumber = 0 Then
        ColumnLetter = Split(Application.Caller.Address(True, False, xlA1), "$")(0)
    Else
        ColumnLetter = Split(Cells(1, ColumnNumber).Address(True, False, xlA1), "$")(0)
    End If
End Function

Компромисс этой функции заключается в том, что она будет очень немного медленнее, чем ответ brettdj из-за теста IF. Но это можно почувствовать, если функция многократно используется в течение очень большого количества раз.

Rosetta
19 март 2016, в 06:41

Поделиться

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

Проблема, с которой я столкнулась, — это прокрутка к определенному столбцу на основе вывода функции MATCH(). Вместо того, чтобы преобразовать номер столбца в параллельную букву столбца, я решил временно переключить стиль ссылки с A1 на R1C1. Таким образом, я мог просто прокрутить до номера столбца, не зациклившись на функции VBA. Чтобы легко переключаться между двумя стилями ссылок, вы можете использовать этот код VBA:

Sub toggle_reference_style()

If Application.ReferenceStyle = xlR1C1 Then
  Application.ReferenceStyle = xlA1
Else
  Application.ReferenceStyle = xlR1C1
End If

End Sub

Will Ediger
12 фев. 2015, в 19:15

Поделиться

Это только для REFEDIT… вообще использовать код uphere
короткая версия… легко читается и понимается/
он использует poz из $

Private Sub RefEdit1_Change()

    Me.Label1.Caption = NOtoLETTER(RefEdit1.Value) ' you may assign to a variable  var=....'

End Sub

Function NOtoLETTER(REFedit)

    Dim First As Long, Second As Long

    First = InStr(REFedit, "$")                 'first poz of $
    Second = InStr(First + 1, REFedit, "$")     'second poz of $

    NOtoLETTER = Mid(REFedit, First + 1, Second - First - 1)   'extract COLUMN LETTER

End Function

Gabriel V
19 март 2016, в 18:24

Поделиться

Sub GiveAddress()
    Dim Chara As String
    Chara = ""
    Dim Num As Integer
    Dim ColNum As Long
    ColNum = InputBox("Input the column number")

    Do
        If ColNum < 27 Then
            Chara = Chr(ColNum + 64) & Chara
            Exit Do
        Else
            Num = ColNum / 26
            If (Num * 26) > ColNum Then Num = Num - 1
            If (Num * 26) = ColNum Then Num = ((ColNum - 1) / 26) - 1
            Chara = Chr((ColNum - (26 * Num)) + 64) & Chara
            ColNum = Num
        End If
    Loop

    MsgBox "Address is '" & Chara & "'."
End Sub

Chetan V.
04 фев. 2016, в 11:50

Поделиться

Письмо столбца из номера столбца можно извлечь, используя формулу, выполнив следующие шаги:
1. Вычислите адрес столбца с помощью формулы ADDRESS
2. Извлечь букву столбца с помощью функции MID и FIND

Пример:
1. АДРЕС (1000,1000,1)
результаты $ALL $1000
2. = MID (F15,2, FIND ( «$», F15,2) -2)
результаты ALL asuming F15 содержит результат шага 1

За один раз мы можем написать
 MID (АДРЕС (1000,1000,1), 2, FIND ( «$», адрес (1000,1000,1), 2) -2)

Bhanu Sinha
22 сен. 2015, в 22:19

Поделиться

Простой способ получить имя столбца

Sub column()

cell=cells(1,1)
column = Replace(cell.Address(False, False), cell.Row, "")
msgbox column

End Sub

Я надеюсь, что это поможет =)

cristobal
11 нояб. 2014, в 12:37

Поделиться

как просто преобразовать в число ascii и использовать Chr() для преобразования обратно в букву?

col_letter = Chr (Selection.Column + 96)

beef_supreme
15 июль 2016, в 17:28

Поделиться

PEDRO COUTO
30 март 2016, в 10:31

Поделиться

Здесь другой способ:

{

      Sub find_test2()

            alpha_col = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,W,Z" 
            MsgBox Split(alpha_col, ",")(ActiveCell.Column - 1) 

      End Sub

}

Mike Powell
28 июль 2014, в 14:17

Поделиться

Ещё вопросы

  • 1Не возвращать обновления в файл YAML и возвращать TypeError при обновлении строки
  • 1как изменить расширенную опцию Wi-Fi из кода, который Chrome потерял доступ к Интернету
  • 0Как правильно отделить приложение от данных?
  • 0JQuery UI Переключатель для запуска функции setTimeout
  • 1Как составить список всех BLOB-объектов внутри определенного подкаталога в облачном хранилище Azure с помощью Python?
  • 1JSTL formatNumber показать пустую строку
  • 0Возникли проблемы с вытягиванием изображений в php
  • 0Javascript Jquery — Изменить цвета ячейки таблицы при нажатии флажка
  • 1Android WebView: как позволить CSS использовать всю высоту с абсолютной позицией?
  • 1Объект с массивом себя
  • 0Угловая диаграмма, показывающая серии, но без данных
  • 1Redux connect — модуль AppRegistry не является зарегистрированным вызываемым модулем
  • 0Mysql Изменить положение строк в столбцах из повторных данных
  • 0PDO PHP bindParam () многократное использование тех же параметров
  • 1Как я могу проверить, если я приостановить или выйти из приложения для Android
  • 0Проверка формы PHP и отчеты об ошибках
  • 0Uncaught TypeError: Object [object Object] не имеет метода ‘cycle’ в chrome
  • 0Центрирование по CSS
  • 0Java Script onClick показывает div: неожиданное поведение. Окно браузера прокручивается вертикально
  • 0Как определить несколько языков в HTML 4
  • 1Как решить «Не удалось найти предмет, который вы пытались приобрести»
  • 1Переменные, объявленные в выражении инициализатора циклов for, всегда лексически внутри тела [duplicate]
  • 1Добавить код во время выполнения
  • 1Карта Google удаляет старые маркеры при нанесении новых маркеров
  • 0Переверните один элемент, откройте другой
  • 0Как изменить выбранный стиль кнопки (отключить остальные)
  • 0Ошибка MySQL 1215 при создании внешнего ключа
  • 1Тензор должен быть из того же графика, что и Тензор в LinearClassifier с AdagradDA Optimizer
  • 0Как повторить все дочерние идентификаторы для нескольких родительских идентификаторов в MySQL
  • 0Исчезает фоновое изображение раздела — только фон
  • 0Невозможно поймать исключение SQL
  • 1конструирование объектов, расширяющих текущий класс, используя статический метод
  • 0Удаление и добавление в JQuery
  • 0Сохранить значение, полученное внутри обещания — угловое
  • 0Как показать / скрыть Div на основе выпадающего выбора с помощью угловых?
  • 1Как мне скопировать содержимое двумерного списка в буфер обмена, отформатированный для Excel?
  • 0как group_concat два столбца
  • 0Как получить доступ к зависимому файлу между служебными файлами Angular?
  • 1Maven Thrift плагин — Как я могу включить определения Thrift?
  • 0Yii модель поколения
  • 0Как заставить (Java) скрипт получить URL и выполнить оператор if на его основе (#transclusion, #highlight)
  • 1Девять патчей не работает на моем устройстве?
  • 1данные Google Analytics, основанные на значении cookie
  • 0MySQL / Mariadb — Выбрать * из хранимой процедуры
  • 0Создать Drop Down, используя AngularJs из JSON
  • 0Попытка установить —std = c ++ 0x или -std = gnu ++ 0x через CGAL_CXX_FLAGS игнорирует значения
  • 0preg_match_all: получить текст внутри кавычек, кроме HTML-тегов
  • 0Ошибка программирования Linux и C ++: 194 и ошибка: 168
  • 1Angular 4 Universal Lazy Load Error
  • 0вставить в таблицу MySQL, используя запрос выбора с дополнительным PHP-скриптом

Понравилась статья? Поделить с друзьями:
  • Excel найти выделенный диапазон
  • Excel найти без учета регистра
  • Excel найти вхождения в таблицах
  • Excel найти английский символы
  • Excel найти вхождение текст