Стивен тестирует какое-то программное обеспечение, и ему нужно ввести в программу кучу «поддельных» имен. Он хотел бы, чтобы эти имена были составлены по образцу, например Nameaaa, Nameaab, Nameaac и т. Д. Через Namezzz. Для этого потребуется создать 17 576 имен (26 x 26 x 26). Он задается вопросом, есть ли простой способ сгенерировать все эти имена в Excel.

Такого рода повторяющаяся задача просто требует макроса. (Они отлично подходят для выполнения скучных, утомительных, повторяющихся задач, которые вы не хотите выполнять вручную.) Вот простой макрос, который может выполнять необходимую работу:

Sub CreateNames()

Dim i As Integer     Dim x As Integer     Dim y As Integer     Dim z As Integer

i = 1     For x = 97 To 122         For y = 97 To 122           For z = 97 To 122               Cells(i, 1) = "Name" & Chr(x) _                 & Chr(y) & Chr(z)

i = i + 1             Next         Next     Next End Sub

Макрос использует три переменные-счетчики (x, y и z), которые служат «переменными счетчика», которые определяют, какая буква алфавита добавляется к «имени», вставленному в ячейку. Обратите внимание, что диапазон циклов For …​ Next составляет от 97 до 122, которые являются кодами ASCII для строчных букв от a до z.

Если вы по какой-то причине не хотите использовать макрос, введите следующую формулу в ячейку A1 пустого листа:

="Name" & CHAR((ROW()-1)/676+97)&CHAR(MOD( (ROW()-1)/26,26)+97)&CHAR(MOD(ROW()-1,26)+97)

Это единственная формула, в результате отображается «Nameaaa».

Скопируйте формулу вниз по строке 17 576, и у вас будут свои вымышленные имена.

_Примечание: _

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

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (12128) применим к Microsoft Excel 97, 2000, 2002 и 2003.

Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:

link: / excelribbon-Generating_Unique_Sequential_Names [Создание уникальных, последовательных имен].