Yaklaşık 20000 satır boyutunda ve 52 sütun içeren bir çalışma kitabım var. Zaman zaman, bir seferde seçilen satırların yüzdesini güncellemem gerekiyor. Seçilmiş hücreleri, satırdaki bir değere göre güncelleştirmek için bir makro kullanmayı umuyordum, tablo 1'e girilecek güncellenmiş değerler ile ikinci bir küçük tabloyla eşleştirildi. Neredeyse bir VLOOKUP işlevi gibi Giriş bulunamazsa, hücreyi silmez. Örneğin, Telefon Numarasını Host ID'ye göre değiştirin.Başka bir Tablodaki tablo değerlerini güncelleştirme
Bunu, Tablo 1'deki değerlerin belirli bir kümesi için aşağıdaki kodda bir Array ile yapmaya çalıştım, ancak değerlerim güncellenmedi. VBA'm biraz paslı, bu yüzden birileri bunu gözden geçirip yardımcı olmak için yardımcı olabilirse takdir edilecektir. En sonunda tablo başlıklarına dayanarak tablodaki herhangi bir girişi güncellemek istiyorum.
Sub NewNameandCostCenter()
Dim myList, myRange
Dim sht As Worksheet
Dim sht2 As Worksheet
Dim LastRow As Long
Dim LastColumn As Long
Dim StartCell As Range
Dim LastRow2 As Long
Set sht = Worksheets("NewNameMacro")
Set sht2 = Worksheets("ALL")
Set StartCell = Range("A2")
'Find Last Row and Column
LastRow = sht.Cells(sht.Rows.Count, StartCell.Column).End(xlUp).Row
LastColumn = sht.Cells(StartCell.Row, sht.Columns.Count).End(xlToLeft).Column
'set myList array
Set myList = sht.Range(StartCell, sht.Cells(LastRow, LastColumn))
LastRow2 = sht.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
'set myRange array
Set myRange = Sheets("ALL").Range("J2:M" & LastRow2)
'Update values of cells adjacent
For Each cel In myList.Columns(1).Cells
myRange.Replace What:=cel.Value, Replacement:=cel.Offset(0, 1).Value, LookAt:=xlWhole
myRange.Replace What:=cel.Value, Replacement:=cel.Offset(0, 2).Value, LookAt:=xlWhole
myRange.Replace What:=cel.Value, Replacement:=cel.Offset(0, 3).Value, LookAt:=xlWhole
Next cel
End Sub
sayesinde JD Doğru, etkili bir şekilde eşleştirme tablosundaki değerlere dayalı verileriniz karşı bir UPDATE sorgusu çalıştırıyorsanız sorunuzu anlamak