Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Oops, please take a look at this code as a replacement of ReplacecodeInModule
Sub below.


Sub ReplacecodeInModule(RepWk As Workbook, myFStr As Variant, myRStr As
Variant)
Dim myCode As String
'Dim myFStr As Variant
'Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub


"Brett Smith" wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr), myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub


--

Dave Peterson
  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

I still wasn't able to get it to replace all of the text. Is there a reason
why it is not replacing the last 3 or 4 variable strings in the array?

"Dave Peterson" wrote:

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr), myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub


--

Dave Peterson

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Did the elements of the myFstr match the code--including upper/lower case?

Brett Smith wrote:

I still wasn't able to get it to replace all of the text. Is there a reason
why it is not replacing the last 3 or 4 variable strings in the array?

"Dave Peterson" wrote:

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr), myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub


--

Dave Peterson


--

Dave Peterson


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Hi Dave,
Not sure what you mean by your question. Are you asking if the program
caught the case specific variables in the code?

"Dave Peterson" wrote:

Did the elements of the myFstr match the code--including upper/lower case?

Brett Smith wrote:

I still wasn't able to get it to replace all of the text. Is there a reason
why it is not replacing the last 3 or 4 variable strings in the array?

"Dave Peterson" wrote:

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr), myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub

--

Dave Peterson


--

Dave Peterson

  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,588
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

I think Dave is asking whether the values in your array were correct
(including the case). In otherwords, are you sure the code is checking for
the correct strings in the opened workbook.

Tim


"Brett Smith" wrote in message
...
Hi Dave,
Not sure what you mean by your question. Are you asking if the program
caught the case specific variables in the code?

"Dave Peterson" wrote:

Did the elements of the myFstr match the code--including upper/lower
case?

Brett Smith wrote:

I still wasn't able to get it to replace all of the text. Is there a
reason
why it is not replacing the last 3 or 4 variable strings in the array?

"Dave Peterson" wrote:

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint",
"YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr),
myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and
so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part.
I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any
help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub

--

Dave Peterson


--

Dave Peterson



  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Just to add to Tim's reply:

In your code, there will be a difference between

Brett
BRETT
brETT
bretT
brett

Case matters the way you wrote the code.

Brett Smith wrote:

Hi Dave,
Not sure what you mean by your question. Are you asking if the program
caught the case specific variables in the code?

"Dave Peterson" wrote:

Did the elements of the myFstr match the code--including upper/lower case?

Brett Smith wrote:

I still wasn't able to get it to replace all of the text. Is there a reason
why it is not replacing the last 3 or 4 variable strings in the array?

"Dave Peterson" wrote:

I'm surprised that it did two.

This is untested, but it did compile.

Option Explicit
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent
Dim iCtr As Long

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints", _
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint", _
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")


For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule
For iCtr = LBound(myFStr) To UBound(myFStr)
If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(iCtr)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(iCtr), myRStr(iCtr))
'MsgBox myCode
.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
Next iCtr
End With
Next myMod
End Sub

And just to remember, your instr() is case sensitive as written and so is your
replace().

That might be important.


Brett Smith wrote:

I posted a question before and it was answered for the most part. I need to
replace 6 strings all at once, but my code only replaces 2 of the 6
variables. How can I change all 6? Here is the code below. Any help would
be greatly appreciated. Thanks!!

Sub FileSearchforMacros2()

Dim i As Integer
Dim wkbkOne As Workbook

With Application.FileSearch
.LookIn = "\\rnumsriggap06\Abase401\Restempl\652"
.SearchSubFolders = True
.FileType = msoFileTypeExcelWorkbooks
If .Execute() 0 Then
'MsgBox "There were " & .FoundFiles.Count & _
' "file(s) found."
For i = 1 To .FoundFiles.Count
'MsgBox .FoundFiles(i)
Set wkbkOne = Application.Workbooks.Open( _
.FoundFiles(i), , , , Password:=("INGRAM"))
ReplacecodeInModule wkbkOne
remove_xlfit3_ref wkbkOne
wkbkOne.Save
wkbkOne.Close
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub



------------------------------------------------------------------------------------------
Sub ReplacecodeInModule(RepWk As Workbook)
Dim myCode As String
Dim myFStr As Variant
Dim myRStr As Variant
Dim myMod As VBComponent

myFStr = Array("XLfit3_", "ExcludePoints", "IncludePoints",
"XLFitExcludePoint", "XLFitIncludePoint", "YRange")
myRStr = Array("xf4_", "ExcludePoint", "IncludePoint",
"xf4_ExcludePoint", "xf4_IncludePoint", "RangeY")

For Each myMod In RepWk.VBProject.VBComponents
With myMod.CodeModule

If .CountOfLines 0 Then
myCode = .Lines(1, .CountOfLines)
If InStr(1, myCode, myFStr(i)) 0 Then
'MsgBox myCode
myCode = Replace(myCode, myFStr(i), myRStr(i))
'MsgBox myCode

.DeleteLines 1, .CountOfLines
.InsertLines .CountOfLines + 1, myCode
End If
End If
End With
Next myMod
End Sub

--

Dave Peterson


--

Dave Peterson


--

Dave Peterson
  #9   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 92
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Brett,

I must be missing something. Where is variable i set to a value.

If InStr(1, myCode, myFStr(i)) 0 Then

Only the first comparison is made, are you sure the second comparison is
made?



*** Sent via Developersdex http://www.developersdex.com ***
  #10   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 92
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Are you using Option Explicit? Always a good thing to do.


*** Sent via Developersdex http://www.developersdex.com ***


  #11   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Do you think Option Explicit could be the reason why my program is not
working as planned? I was thinking about that actually.

"Edward Ulle" wrote:

Are you using Option Explicit? Always a good thing to do.


*** Sent via Developersdex http://www.developersdex.com ***

  #12   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 54
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

Edward,
I never set variable i to any value. I just declared it.

"Edward Ulle" wrote:

Brett,

I must be missing something. Where is variable i set to a value.

If InStr(1, myCode, myFStr(i)) 0 Then

Only the first comparison is made, are you sure the second comparison is
made?



*** Sent via Developersdex http://www.developersdex.com ***

  #13   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,588
Default Changing Code Modules, PLEASE HELP ASAP!! PART 2

If you just declare i and never set it to anything then its value will
always be 0

Tim

"Brett Smith" wrote in message
...
Edward,
I never set variable i to any value. I just declared it.

"Edward Ulle" wrote:

Brett,

I must be missing something. Where is variable i set to a value.

If InStr(1, myCode, myFStr(i)) 0 Then

Only the first comparison is made, are you sure the second comparison is
made?



*** Sent via Developersdex http://www.developersdex.com ***



Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Changing code Modules, PLEASE HELP!! Brett Smith[_2_] Excel Programming 10 January 31st 06 01:30 PM
Need Code To Print From Code Modules davidm Excel Programming 0 June 7th 05 06:11 AM
Need Code To Print From Code Modules davidm Excel Programming 0 June 7th 05 06:08 AM
When to code in sheet or userform modules and when to use modules Tony James Excel Programming 1 December 16th 04 10:02 PM
editing code in modules through VB mark Excel Programming 2 August 12th 04 05:20 PM


All times are GMT +1. The time now is 10:15 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright ©2004-2025 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"