Excel için belirli bir sütun belirleme komut dosyasını bulma ve değiştirme


0

Belirli kelimeleri / sayıları başka kelimelerle / sayılarla değiştiren bir komut dosyası çalıştırmaya çalışıyorum. İyi çalışıyor, ancak sorun yalnızca G sütununda çalışması gerektiği çünkü aksi takdirde değiştirilmemesi gereken şeyler değiştirilecek.

Kod şöyle gözüküyor:

Dim sht As Worksheet
Dim fndList As Variant
Dim rplcList As Variant
Dim x As Long

fndList = Array("10780", "10782", "10783", "10784", "10785", "10786", "10787", "10789", "10790", "10791", "10792", "10793", "10794", "10795", "10796", "10797", "10798", "10799", "10800", "10801", "10802", "10803", "10804", "10805", "10806")
rplcList = Array("90310011", "90310012", "90310020", "90310023", "90310039", "90310044", "90310051", "90310054", "90310061", "90310066", "90310079", "90310096", "90310099", "90310100", "90310101", "90310113", "90310119", "90310143", "90310148", "90310150", "90310154", "90310159", "90310176", "90310177", "90310161")

'Loop through each item in Array lists
For x = LBound(fndList) To UBound(fndList)
    'Loop through each worksheet in ActiveWorkbook
    For Each sht In ActiveWorkbook.Worksheets
        sht.Cells.Replace What:=fndList(x), Replacement:=rplcList(x), _
        LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
        SearchFormat:=False, ReplaceFormat:=False
    Next sht
Next x

Kodun yalnızca G sütununda çalışması için neyin değiştirilmesi gerekiyor?

Yanıtlar:


1

Bu satırı değiştirmeyi deneyin:

sht.Cells.Replace What:=fndList(x), Replacement:=rplcList(x), _

Bu çizgi ile:

sht.Range("G:G").Replace What:=fndList(x), Replacement:=rplcList(x), _


sht.Cellssayfadaki tüm hücrelerde sht.Range("G:G")çalışır , ancak yalnızca bu durumda sütun olan belirtilen aralıktaki hücrelerde çalışır G.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.