reseni muze byt takoveto:
do noveho sesitu umisti do modulu:
Sub Nahradit()
Dim SourceFile As Workbook, SSheet As Worksheet, Source As Range, SRow As Range, SCell As Range
Dim TargetFile As Workbook, TSheet As Worksheet, TRow As Range, TCell As Range
Dim j As Integer
'
Set SourceFile = Workbooks.Open("D:\Data\Excel\Prepis1") ' CestaSoubor
Set SSheet = SourceFile.Worksheets("List1")
Set Source = SSheet.UsedRange ' oblast zdrojovych dat
Set TargetFile = Workbooks.Open("D:\Data\Excel\Prepis2") ' CestaSoubor
Set TSheet = TargetFile.Worksheets("List2")
'
For Each SRow In Source.Rows
Set TRow = Worksheets("list2").Range(SRow.Address)
Set TCell = TRow.Resize(1, 1)
j = 0
For Each SCell In SRow.Cells
If SCell.Value <> TCell.Offset(0, j).Value Then ' rozdil v bunkach
TRow.Value = SRow.Value ' nahradit radek
Exit For
End If
j = j + 1
Next SCell
Next SRow
TargetFile.Close
SourceFile.Close
End Sub
procedura otevre oba soubory, a nahradi radek v pripade zmeny, zavre soubory
pro volani subrutiny si vytvor klavesovou zkratku, tlacitko,..., dale si osetri chyby pri otevirani souboru