21. januar 2002 - 13:22
Der er
9 kommentarer og 1 løsning
Søg og Erstat i Excel VBA
Når jeg har importeret en semik.sep.txt-fil i Excel, virker den ordinære \"søg og erstat-funktion\" (ctrl H)i Excel, MEN den virker IKKE i VBA.!!! Er der nogen som kender løsningen til dette problem?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
21. januar 2002 - 15:46
#1
Hvad har du skrevet i VBA ??
21. januar 2002 - 16:01
#2
Det her virker fint på en importeret fil: (Erstatter 99 med 100, men du skal huske at vælge din fil først (workbooks(\"something\").activate) Selection.Replace What:=\"99\", Replacement:=\"100\", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False
21. januar 2002 - 16:53
#3
Hej bak Jeg importerer en mændge tal med punktum sum decimal separator. Søg og erstat koden erstatter godtnok punktum med komma. MEN Excel opfatter ikke den nye værdi som et tal, men som tekst ! Her er et uddrag af koden: Workbooks.OpenText FileName:=\"R:\\positioner\\posot02a.txt\", Origin:= _ xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _ Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _ Array(2, 1), Array(3, 1), Array(4, 2), Array(5, 1), Array(6, 2), Array(7, 5), Array(8, 1), _ Array(9, 2), Array(10, 1)) Range(\"A1:J2000\").Select Selection.Copy ............ Columns(\"BN:BO\").Select Selection.Replace What:=\".\", Replacement:=\",\", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False ............ Det spiller sgu stadigvæk ikke?
21. januar 2002 - 16:54
#4
Hej bak Jeg importerer en mændge tal med punktum sum decimal separator. Søg og erstat koden erstatter godtnok punktum med komma. MEN Excel opfatter ikke den nye værdi som et tal, men som tekst ! Her er et uddrag af koden: Workbooks.OpenText FileName:=\"R:\\positioner\\posot02a.txt\", Origin:= _ xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _ Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _ Array(2, 1), Array(3, 1), Array(4, 2), Array(5, 1), Array(6, 2), Array(7, 5), Array(8, 1), _ Array(9, 2), Array(10, 1)) Range(\"A1:J2000\").Select Selection.Copy ............ Columns(\"BN:BO\").Select Selection.Replace What:=\".\", Replacement:=\",\", LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False ............ Det spiller sgu stadigvæk ikke?
21. januar 2002 - 17:45
#5
omdanner teksten til værdier (tal) range(\"BN1).select Selection.CurrentRegion.Select For Each c In Selection.Cells c.Value = CDbl(c.Value) Next
21. januar 2002 - 17:46
#6
range(\"BN1\").select Selection.CurrentRegion.Select For Each c In Selection.Cells c.Value = CDbl(c.Value) Next
21. januar 2002 - 21:23
#7
Et lille trick jeg lige så: sæt det her ind i din open sætning lige efter sidste array.Så behøver du slet ikke ændre noget med kode. Excel kan selv. DecimalSeparator=\".\", ThousandsSeparator = \",\"
21. januar 2002 - 21:24
#8
Det kan også være omvendt!! :-)
22. januar 2002 - 14:28
#9
Workbooks.OpenText FileName:="R:\positioner\posot02a.txt", Origin:= _ xlMSDOS, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _ xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, _ Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _ Array(2, 1), Array(3, 1), Array(4, 2), Array(5, 1), Array(6, 2), Array(7, 5), Array(8, 1), _ Array(9, 2), Array(10, 1)), DecimalSeparator=".", ThousandsSeparator = ","
22. januar 2002 - 22:32
#10
Hej bak Nu virker det ... 1.000 tak for hjælpen :-)
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.