-2
あなたからの助けが必要です。私はネットを検索し、私の問題の解決策を見つけることができません。 VBは私の特技ではありませんが、私が使用することを余儀なくされている実際の後方システムのために、VBは私のエンジニアリング時間を短縮する答えと思われます。私は動作するコードを見つけましたが、これを拡張する必要があります。VBを使用して特定のExcelシートで検索/置換する
すべてのシートではなく、特定のシートを1つだけ検索して置換するには、このコードが必要です。一度私はこの権利を得ると、私はより多くのことを行うためにそれを変更します。 :)
このコードを変更するにはどうすればよいですか?
Sub Multi_FindReplace()
'PURPOSE: Find & Replace a list of text/values throughout entire workbook from a table
'SOURCE: www.TheSpreadsheetGuru.com/the-code-vault
Dim sht As Worksheet
Dim fndList As Integer
Dim rplcList As Integer
Dim tbl As ListObject
Dim myArray As Variant
'Create variable to point to your table
Set tbl = Worksheets("Table").ListObjects("Table1")
'Create an Array out of the Table's Data
Set TempArray = tbl.DataBodyRange
myArray = Application.Transpose(TempArray)
'Designate Columns for Find/Replace data
fndList = 1
rplcList = 2
'Loop through each item in Array lists
For x = LBound(myArray, 1) To UBound(myArray, 2)
'Loop through each worksheet in ActiveWorkbook (skip sheet with table in it)
For Each sht In ActiveWorkbook.Worksheets
If sht.Name <> tbl.Parent.Name Then
sht.Cells.Replace What:=myArray(fndList, x), Replacement:=myArray(rplcList, x), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
End If
Next sht
Next x
End Sub
このコードはかなり終わりですが、金銭的報酬なしで完全な範囲を与えることは公正ではありません。ちょうどこの解決策で十分です。 :)
PS:フォーマットはうまくいくと思っていますか?
はあなたに非常に多くのUGPありがとうございます。出来た。 –
私は別の質問があります。私は別のスクリプトを書いています(それは正しい言葉ですか?)、毎回異なる値で215回実行する必要があります。私が行うコーディングのタイプでは、私はファンクションブロック(FB)を使用します。 VBでこれに使用する正しい用語は何でしょうか?私はVBの関数を読んだが、それは間違った "ツール"のようだ。サブとループは私が必要とするものに近いと思われる。私が接する前に、正しい方向に私を助けてください。 –
ループを使用して、関数またはサブを呼び出します。あなたはそれらを呼び出すときにメソッドのパラメータをstart/useに与えることができます。関数だけが値を返すことができます。それは唯一の違いのようです。 – UGP