Создание уникальных последовательных имен (Microsoft Excel)
Стивен тестирует какое-то программное обеспечение, и ему нужно ввести в программу кучу «поддельных» имен. Он хотел бы, чтобы эти имена были составлены по образцу, например 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 [Создание уникальных, последовательных имен]
.