Just nu i M3-nätverket
Gå till innehåll

ta bort mellanrum och "fnytt"


__Millan__

Rekommendera Poster

Hej

 

Jag har skrivit en kod for att ta bort " " och den skall aven innehålla att ta bort "~":

 

Men den vill inte fungera skriver endast ut siffor... Någon som vet vad felet ar?

 

Sub DelteSign()
'Dim DeleteSign()
tagnameN = 2	'column ny lista tag
termnameN = 3 'column ny lista termName
RowN = 2 	'rad ny lista
tagnameG = 2	'column gamla lista tag
termnameG = 3 'column gamla lista termName
RowG = 2 	'rad gamla lista
'TrimString As String


Do Until Worksheets("Alarm2009").Cells(RowG, tagnameG) = ""
	ToCheckForSpace = Worksheets("Alarm2009").Cells(RowG, tagnameG)
	xToCheckForSpace = Len(ToCheckForSpace)
	x = 1
	'Worksheets("Alarm2009").Cells(RowG, tagnameG) = LTrim(xToCheckForSpace)
	Do Until x = xToCheckForSpace
	If Mid(ToCheckForSpace, x, 1) = " " Then
	If x = 1 Then
	textA = ""
	textB = Mid(ToCheckForSpace, 1, x + 1)
	Else
	textA = Mid(ToCheckForSpace, 1, x - 1)
	textB = Mid(ToCheckForSpace, x - 1, xToCheckForSpace - x)
	Worksheets("Alarm2009").Cells(RowG, 2 + x) = x
	Worksheets("Alarm2009").Cells(RowG, 3 + x) = textA
	Worksheets("Alarm2009").Cells(RowG, 4 + x) = textB
	End If
	ToCheckForSpace = textA & textB
	'Worksheets("Alarm2009").Cells(RowG, 3 + x) = ToCheckForSpace
	'textA = Mid(ToCheckForSpace, 1, x - 1)
	'textB
	'ToCheckForSpace = Mid(ToCheckForSpace, 1, x - 1) & Mid(ToCheckForSpace, x + 1, ToCheckForSpace - x)
	'ToCheckForSpace = Mid(xToCheckForSpace, x + 1, xToCheckForSpace - x)
	'ToCheckForSpace = testA & testB
	'ElseIf Mid(ToCheckForSpace, x, 1) = "~" Then
	'ToCheckForSpace = Mid(ToCheckForSpace, 1, x - 1) '& Mid(xToCheckForSpace, x + 1, xToCheckForSpace - x)
	End If
	x = x + 1

	Loop
	Worksheets("Alarm2009").Cells(RowG, tagnameG) = ToCheckForSpace
	RowG = RowG + 1

Loop
End Sub

 

Innan jag brukar koden:

50A T____1205termname 50AT____1205OpenCirc 50AT____12 05AlarmHH 50AT____1205AlarmLL 50AT ____1175OpenCirc 50AT____1175ShortCirc 50AT____1175AlarmH 50AT____1175AlarmL 50P0012A1104OpenCirc 50P0012A1104ShortCirc 50P000000000AlarmH 50AT____1205AlarmL

efter bruk av koden:

50A T____1205termname 50AT____1205OpenCirc 456789101150AT____1222AlarmHH 1150AT____1205AlarmLL 1150ATTTTTTTTTOpenCirc 56789101150AT____1175ShortCirc 56789101150AT____1175AlarmH 50AT____1175AlarmL 50P0012A1104OpenCirc 50P0012A1104ShortCirc 50P000000000AlarmH 6789101150AT____1205AlarmLTack for hjalpen på forhand!

 

Mvh Camilla

Länk till kommentar
Dela på andra webbplatser

Du vill ta bort " " och "~" ur en text?

Inte helt klar på vad din kod gör. En enkel rekommendation för läslig kod är att

1: Deklarerar dina variabler

2: Ge dem tydliga namn

annars helt okej kod...

 

 

men men, lite omständlig kod för något enkelt :)

Replace(Replace(ToCheckForSpace, " ", ""), "~", "")

den raden borde fixa till det hela om du nu vill ta bort alla mellanslag och alla tilde-tecken.

ja, detta går även att fixa direkt på arbetsbladet med en funktion där om man vill skippa VBA-koden.

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...