ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   chr(42) to replace (https://www.excelbanter.com/excel-discussion-misc-queries/63952-chr-42-replace.html)

mostakimm

chr(42) to replace
 

Sub TrimALL()
'David McRitchie 2000-07-03 mod 2000-08-16 join.htm
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim cell As Range
'Also Treat CHR 0160, as a space (CHR 032)
Selection.Replace What:=Chr(160), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Trim in Excel removes extra internal spaces, VBA does not
On Error Resume Next 'in case no text cells in selection
For Each cell In Intersect(Selection, _
Selection.SpecialCells(xlConstants, xlTextValues))
cell.Value = Application.Trim(cell.Value)
Next cell
On Error GoTo 0
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

This is a great code, but when i replace chr(160) with chr(42) which
represents * , every thing is deleted. and regular replace in excel
dose not do the job.

How can i delet * from 03-08-10* , and it is a text cell.

Any help please, thank you all in advance.
Marwan


--
mostakimm
------------------------------------------------------------------------
mostakimm's Profile: http://www.excelforum.com/member.php...o&userid=20025
View this thread: http://www.excelforum.com/showthread...hreadid=499385


Peo Sjoblom

chr(42) to replace
 
Since * is a wildcard you need to precede it with a tilde ~*
you don't need a macro for that, just press ctrl + h and in the find what
box put ~* and in the replace box put whatever you want to replace with
or you can edit the macro and use

Selection.Replace What:="~*", Replacement:=Chr(32),_



for that part




--

Regards,

Peo Sjoblom


"mostakimm" wrote
in message ...

Sub TrimALL()
'David McRitchie 2000-07-03 mod 2000-08-16 join.htm
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim cell As Range
'Also Treat CHR 0160, as a space (CHR 032)
Selection.Replace What:=Chr(160), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Trim in Excel removes extra internal spaces, VBA does not
On Error Resume Next 'in case no text cells in selection
For Each cell In Intersect(Selection, _
Selection.SpecialCells(xlConstants, xlTextValues))
cell.Value = Application.Trim(cell.Value)
Next cell
On Error GoTo 0
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

This is a great code, but when i replace chr(160) with chr(42) which
represents * , every thing is deleted. and regular replace in excel
dose not do the job.

How can i delet * from 03-08-10* , and it is a text cell.

Any help please, thank you all in advance.
Marwan


--
mostakimm
------------------------------------------------------------------------
mostakimm's Profile:

http://www.excelforum.com/member.php...o&userid=20025
View this thread: http://www.excelforum.com/showthread...hreadid=499385




mostakimm

chr(42) to replace
 

Thank you Thank you Thank you Thank you;


--
mostakimm
------------------------------------------------------------------------
mostakimm's Profile: http://www.excelforum.com/member.php...o&userid=20025
View this thread: http://www.excelforum.com/showthread...hreadid=499385


Dave Peterson

chr(42) to replace
 
Change
What:=Chr(160)
to
What:=Chr(42)

And rerun the macro???

Chr(32) is the space character. Is that what you want it replaced with?

mostakimm wrote:

Sub TrimALL()
'David McRitchie 2000-07-03 mod 2000-08-16 join.htm
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim cell As Range
'Also Treat CHR 0160, as a space (CHR 032)
Selection.Replace What:=Chr(160), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Trim in Excel removes extra internal spaces, VBA does not
On Error Resume Next 'in case no text cells in selection
For Each cell In Intersect(Selection, _
Selection.SpecialCells(xlConstants, xlTextValues))
cell.Value = Application.Trim(cell.Value)
Next cell
On Error GoTo 0
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

This is a great code, but when i replace chr(160) with chr(42) which
represents * , every thing is deleted. and regular replace in excel
dose not do the job.

How can i delet * from 03-08-10* , and it is a text cell.

Any help please, thank you all in advance.
Marwan

--
mostakimm
------------------------------------------------------------------------
mostakimm's Profile: http://www.excelforum.com/member.php...o&userid=20025
View this thread: http://www.excelforum.com/showthread...hreadid=499385


--

Dave Peterson

Dave Peterson

chr(42) to replace
 
Do not use this!

(I didn't notice that chr(42) was the asterisk!)

Dave Peterson wrote:

Change
What:=Chr(160)
to
What:=Chr(42)

And rerun the macro???

Chr(32) is the space character. Is that what you want it replaced with?

mostakimm wrote:

Sub TrimALL()
'David McRitchie 2000-07-03 mod 2000-08-16 join.htm
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim cell As Range
'Also Treat CHR 0160, as a space (CHR 032)
Selection.Replace What:=Chr(160), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Trim in Excel removes extra internal spaces, VBA does not
On Error Resume Next 'in case no text cells in selection
For Each cell In Intersect(Selection, _
Selection.SpecialCells(xlConstants, xlTextValues))
cell.Value = Application.Trim(cell.Value)
Next cell
On Error GoTo 0
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

This is a great code, but when i replace chr(160) with chr(42) which
represents * , every thing is deleted. and regular replace in excel
dose not do the job.

How can i delet * from 03-08-10* , and it is a text cell.

Any help please, thank you all in advance.
Marwan

--
mostakimm
------------------------------------------------------------------------
mostakimm's Profile: http://www.excelforum.com/member.php...o&userid=20025
View this thread: http://www.excelforum.com/showthread...hreadid=499385


--

Dave Peterson


--

Dave Peterson


All times are GMT +1. The time now is 09:04 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com