Создать буквенно-цифровую строку на основе значения соседнего столбца в Excel VBA - PullRequest
1 голос
/ 11 октября 2019

У меня есть два столбца 'Sample_No' и 'Result_Name'. На основе другого имени результата я хочу создать буквенно-цифровую строку 'NL- #' в столбце 'Sample_No'.

Например.

Sample_No(To be generated)     Result_Name
NL-1                             ABC
NL-2                             ABC
NL-3                             ABC

NL-1                             XYZ
NL-2                             XYZ

NL-1                             PQR

NL-4                             ABC
NL-5                             ABC

Можно ли это сделать в Excel_VBA? Пожалуйста, помогите мне с этим! Любая помощь будет оценена! Я попытался найти пару решений, но нигде не смог найти.

Спасибо!

1 Ответ

1 голос
/ 11 октября 2019

Вы можете сделать это либо по формуле, предложенной BigBen, либо использовать функцию VBA "Countif".

Я предполагаю, что данные выглядят так:

enter image description here

Код VBA:

Sub GenerateAlphaNumber()

Dim lrow As Long

lrow = Cells(Rows.Count, "B").End(xlUp).Row 'find the lastrow in column B

For i = 2 To lrow 'Loop from row 2 until last row
'Check that cell in column B is not empty. If thats' true, then perform countif
If Cells(i, "B").Value <> "" Then Cells(i, 1).Value = "NL-" & WorksheetFunction.CountIf(Range(Cells(2, "B"), Cells(i, "B")), Cells(i, "B").Value)
Next i
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...