Bir dizede vba kullanarak belirli bir pozisyonda nasıl değiştirilir


2

Bir metin dosyasındaki bir değeri değiştirmek istiyorum.
Bu değeri Replace yöntemiyle değiştirmeyi denersem, aynı değerlerin tümü değiştirilir.
Sadece dize belirli bir pozisyonda değiştirmek istiyorum.

Örnek
00, 0, 0 => 00, 1, 0 (Tamam)
00, 0, 0 => 11, 1, 1 (değil)

Şimdiden teşekkürler

Yanıtlar:


2

Hera ile değiştirmenin 4 farklı yolu 0vardır 1. Fakat davanızda sadece iki tanesi kullanılabilir.

  1. WorksheetFunction.Replace ()

    WorksheetFunction.Replace( old_text, start, number_of_chars, new_text )

  2. WorksheetFunction.Substitute ()

    WorksheetFunction.Substitute(text, oldtext, newtext, [nth_appearance] )

  3. ) (Değiştir

    Replace( Expression, Find, Replace, [Start, [Count, [Compare]]] )

  4. Range.Replace ()

    Range.Replace( What, Replacement, [LookAt], [SearchOrder], [MatchCase], [SearchFormat], [ReplaceFormat] )

Input        VBA code                                      Output

görüntü tanımını buraya girin görüntü tanımını buraya girin


0

Cevabınız için çok teşekkürler.
Split ve Join Function kullanarak geliştim.

Kod:

Dim Arr () Dize
Arr = Bölünmüş ("00, 0, 0", ",")
Arr (1) = "1"
newLine = Katıl (Arr, ",") '' "," 00, 1, 0 "olur.

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.