Ciupanezul21
New Member
- Joined
- May 16, 2021
- Messages
- 2
- Office Version
- 365
- Platform
- Windows
BASED ON THIS CODE, I HAVE CARRIED OUT THE FOLLOWING STEPS 1. I SELECT A SERIES OF ROWS TO BE CONCATENATED WITH SOME CRITERIA A DELIMITER / SEPARATOR BETWEEN THE SELECTED VALUES AND ALSO A START AND END CODING, BUT I WANT EACH CODING TO END. THAT IS, THE LAST LETTER AS EX:
S-1620-180-16-A
"A" APPEARS IN ALL THE SELECTED ONES....... BUT I NEED EACH ROW TO HAVE A DIFFERENT LETTER FOR EACH OPERATIONAL PHASE THAT THAT PIECE MUST HAVE.
CAN SOMEONE HELP ME CREATE FOR EACH NEXT ROW TO REPEAT TO ME THE QUESTION WHAT THE LAST LETTER SHOULD BE?
ACCORDING TO THE ATTACHED IMAGE
The VBA CODE IS:
Sub CODIFICARE()
Separator = InputBox("INTRODUCERE SEPARATOR: ", Default:="-")
Output = ""
Separator2 = InputBox("INTRODUCERE CODIFICARE PENTRU PAL BRUT/MELAMINAT ,CHERESTEA ,MDF,PLACAJ: ")
Separator3 = InputBox("INTRODUCERE NATURA CODIFICARII A- FORMA FARA GAURI SI ALTE FORME,B- FORMA CUC GAURI,C-FORMA CU GAURI SI ALTE CHESTII IN +: ")
For row_no = 1 To Selection.Rows.Count
For col_no = 1 To Selection.Columns.Count
If VarType(Selection.Cells(row_no, col_no)) = 8 Then
Output = Output + Trim(Selection.Cells(row_no, col_no)) + Separator
Else
Output = Output + Trim(Str(Selection.Cells(row_no, col_no))) + Separator
End If
Next col_no
Selection.Cells(row_no, Selection.Columns.Count + 5) = Separator2 + Separator + Trim(Mid(Output, 1, Len(Output) - 1)) + Separator + Separator3
Output = ""
Next row_no
End Sub
AND ON THE MAIN PAGE I HAVE
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Selection.Count >= 1 Then
If Not Intersect(Target, Range("H10:H190")) Is Nothing Then
Call CODIFICARE
End If
End If
If Selection.Count >= 1 Then
If Not Intersect(Target, Range("H10")) Is Nothing Then
End If
End If
End Sub
S-1620-180-16-A
"A" APPEARS IN ALL THE SELECTED ONES....... BUT I NEED EACH ROW TO HAVE A DIFFERENT LETTER FOR EACH OPERATIONAL PHASE THAT THAT PIECE MUST HAVE.
CAN SOMEONE HELP ME CREATE FOR EACH NEXT ROW TO REPEAT TO ME THE QUESTION WHAT THE LAST LETTER SHOULD BE?
ACCORDING TO THE ATTACHED IMAGE
The VBA CODE IS:
Sub CODIFICARE()
Separator = InputBox("INTRODUCERE SEPARATOR: ", Default:="-")
Output = ""
Separator2 = InputBox("INTRODUCERE CODIFICARE PENTRU PAL BRUT/MELAMINAT ,CHERESTEA ,MDF,PLACAJ: ")
Separator3 = InputBox("INTRODUCERE NATURA CODIFICARII A- FORMA FARA GAURI SI ALTE FORME,B- FORMA CUC GAURI,C-FORMA CU GAURI SI ALTE CHESTII IN +: ")
For row_no = 1 To Selection.Rows.Count
For col_no = 1 To Selection.Columns.Count
If VarType(Selection.Cells(row_no, col_no)) = 8 Then
Output = Output + Trim(Selection.Cells(row_no, col_no)) + Separator
Else
Output = Output + Trim(Str(Selection.Cells(row_no, col_no))) + Separator
End If
Next col_no
Selection.Cells(row_no, Selection.Columns.Count + 5) = Separator2 + Separator + Trim(Mid(Output, 1, Len(Output) - 1)) + Separator + Separator3
Output = ""
Next row_no
End Sub
AND ON THE MAIN PAGE I HAVE
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Selection.Count >= 1 Then
If Not Intersect(Target, Range("H10:H190")) Is Nothing Then
Call CODIFICARE
End If
End If
If Selection.Count >= 1 Then
If Not Intersect(Target, Range("H10")) Is Nothing Then
End If
End If
End Sub