i just have VALORE ="8-56-7-1254-88-6"
and INDICE=7
How to remove INDICE from VALORE, end maintain the format:
"8-56-1254-88-6"
Note:
INDICE have a variable lenght
googoling...
Private Sub FORMAT_STRINGM()
VALORE = SSTAB_GYM.LNRPMOD.Caption
Select Case True
Case VALORE Like INDICE & "-#*"
VALORE = Replace$(VALORE, INDICE & "-", vbNullString, , 1)
Case VALORE Like "*#-" & INDICE
VALORE = Left$(VALORE, InStrRev(INDICE, "-") - 1)
Case VALORE Like "*-" & INDICE & "-*"
VALORE = Replace$(VALORE, "-" & INDICE & "-", "-")
End Select
'PATM = VALORE
End Sub
REMOVE string in string array
-
- Administrator
- Posts: 80088
- Joined: 16 Jan 2010, 00:14
- Status: Microsoft MVP
- Location: Wageningen, The Netherlands
Re: REMOVE string in string array
A shorter version:
Code: Select all
Private Sub FORMAT_STRINGM2()
VALORE = SSTAB_GYM.LNRPMOD.Caption
VALORE = Join(Filter(Split(VALORE, "-"), INDICE, False), "-")
End Sub
Best wishes,
Hans
Hans
-
- PlatinumLounger
- Posts: 4576
- Joined: 26 Apr 2010, 17:36
Re: REMOVE string in string array
HansV wrote: ↑02 Jan 2025, 11:39A shorter version:
Code: Select all
Private Sub FORMAT_STRINGM2() VALORE = SSTAB_GYM.LNRPMOD.Caption VALORE = Join(Filter(Split(VALORE, "-"), INDICE, False), "-") End Sub

-
- 5StarLounger
- Posts: 678
- Joined: 14 Nov 2012, 16:06
Re: REMOVE string in string array
What about 'replace' ?