Сначала я должен извиниться за мои очень ограниченные навыки программирования на VBA. Итак, код, который у меня есть, в основном делает то, что я хочу: у меня есть сотни файлов Excel, которые мне нужно постоянно изменять за раз. Если в определенной c ячейке («B1») есть строка слов «draw», ничего не должно происходить. Если в ячейке нет строки слов «рисовать», перед словом «подготовка» в ячейке следует вставить слово «резервуар». Макрос просматривает все файлы в данной папке, изменяет формат, выводит в новую папку и т. Д. c. Все это прекрасно работает. Но иногда ячейка может содержать строку слов «пул» вместо «ничья». В этом случае я вообще не хочу менять содержимое ячейки. В общем, если в ячейке есть «пул» или «ничья», ничего не делать. Если их обоих нет, добавьте в ячейку строку «Tank» перед строкой слова «prepare». Вот код, который у меня есть:
Sub SIS_ALIMS()
Dim wbOpen As Workbook
Dim MyDir As String
MyDir = "C:\Processed data"
strExtension = Dir(MyDir & "\*.xls")
While strExtension <> vbNullString
Set wbOpen = Workbooks.Open(MyDir & "\" & strExtension)
With wbOpen
Set rgFound = Range("B1").Find("draw", MatchCase:=False)
If rgFound Is Nothing Then
Range("B1").replace What:="prep", Replacement:="Tank prep"
Else
End If
Dim SaveName As String
SaveName = ActiveSheet.Range("B8").Text
ActiveWorkbook.SaveAs fileName:="C:\Processed data\ALIMS data\" & _
SaveName & ".txt"
.Close SaveChanges:=False
End With
strExtension = Dir
Wend
Application.ScreenUpdating = True
End Sub