thonon nói:
Nếu như vậy thì không cần đưa ra câu hỏi để làm gì.Bạn hãy dowload tool ExcelFix 4.23 demo tại:
http://www.cimaware.com/main/download/index.php và fix file đấy. Chú ý trước khi click vào Recover phải cài đặt lại cấu hình cho excelrepair: Vào Options-đánh dấu vào ShowFormulas thì mới hiện lên Code được.
To: thonon,
Chắc có lẻ nếu bạn đọc thử đọan code dưới đây thì bạn có câu trả lời, hay ít ra là một phần của câu trả lời.
Thân,
Lê Văn Duyệt.
To:Tranchau,
Chắc khi Anh đọc đọan code dưới đây, Anh có thể tham gia một vài ý kiến vào diễn đàn Anh hả?
Chúc Anh khỏe.
'------------------------------------------------------------------------------
Sub Hien_DMTHEP()
On Error GoTo KetthucSUB
If ExecuteExcel4Macro("WINDOWS()") = "" Then
Exit Sub
End If
If Val(Application.Version) < 8 Then
On Error GoTo InputErrHandler
Dim lbMenus As ListBox
Dim i, VLROW, SDONG, SCOT As Integer
' Dim KCROW, KCROW1 As Double
InputErrHandler10:
ExecuteExcel4Macro ("ECHO(FALSE)")
If ExecuteExcel4Macro("GET.NOTE(""R1C1"")") = "Du toan" Then
SCOT = ExecuteExcel4Macro("COLUMN(ACTIVE.CELL())")
If SCOT = 5 Then
SDONG = ExecuteExcel4Macro("ROW(ACTIVE.CELL())")
' Range("E" & SDONG).Select
' KCROW1 = ExecuteExcel4Macro("GET.CELL(45)")
' KCROW = 0
' For i = 1 To SDONG
' Range("E" & i).Select
' KCROW = KCROW + ExecuteExcel4Macro("GET.CELL(17)")
' Next
ActiveSheet.ListBoxes.Add(0, 0, 120, 110).Select
With Selection
.PrintObject = False
.Display3DShading = True
End With
Selection.Name = "List Box"
Selection.OnAction = "An_DMTHEP"
If Val(Application.Version) > 7 Then
ActiveWindow.ScrollRow = 1
Range("A1").Select
Range("A7").Select
ActiveWindow.FreezePanes = True
Else
Range("A1").Select
Range("A7").Select
ActiveWindow.FreezePanes = True
End If
ExecuteExcel4Macro ("ECHO(FALSE)")
ExecuteExcel4Macro ("SELECT(""RC5"")")
Set lbMenus = ActiveSheet.ListBoxes("list Box")
lbMenus.RemoveAllItems
Sheets("Config").Select
Range("G1").Select
VLROW = 1
While ExecuteExcel4Macro("GET.FORMULA(""R" & VLROW & "C7"")") <> ""
lbMenus.AddItem ExecuteExcel4Macro("GET.FORMULA(""R" & VLROW & "C7"")")
VLROW = VLROW + 1
Wend
Sheets("Du toan").Select
' KCROW1 = (KCROW - KCROW1)
' i = 0
' While KCROW1 >= -5
' ExecuteExcel4Macro ("SELECT(""R" & i & "C" & SCOT & """)")
' KCROW1 = KCROW1 - ExecuteExcel4Macro("GET.CELL(17)")
' i = i + 1
' Wend
' i = i + 1
' ActiveWindow.ScrollRow = i
Range("E" & SDONG).Select
End If
Exit Sub
End If
Else
On Error GoTo InputErrHandler10
ExecuteExcel4Macro ("ECHO(FALSE)")
SCOT = ExecuteExcel4Macro("COLUMN(ACTIVE.CELL())")
SDONG = ExecuteExcel4Macro("ROW(ACTIVE.CELL())")
ActiveSheet.Shapes("List Box").Select
Selection.Delete
ActiveWindow.ScrollRow = 1
Range("A1").Select
ActiveWindow.FreezePanes = False
Range("E" & SDONG).Select
End If
Exit Sub
InputErrHandler:
Selection.Delete
ActiveSheet.DrawingObjects("List Box").Select
Selection.Delete
Range("A7").Select
ActiveWindow.FreezePanes = False
Range("E" & SDONG).Select
Exit Sub
KetthucSUB:
End Sub
Function FAn_DMTHEP()
Dim THUTUTHEP, SCOT, SDONG As Integer
Dim lbMenus As ListBox
SCOT = ExecuteExcel4Macro("COLUMN(ACTIVE.CELL())")
SDONG = ExecuteExcel4Macro("ROW(ACTIVE.CELL())")
Set lbMenus = ActiveSheet.ListBoxes("list Box")
THUTUTHEP = lbMenus.Value
' If THUTUTHEP = 1 Then
' If THUTUTHEP = 1 Then
' THUTUTHEP = 0
' End If
' ActiveSheet.DrawingObjects("List Box").Select
' Selection.Delete
' Range("A7").Select
' ActiveWindow.FreezePanes = False
' End If
ExecuteExcel4Macro ("SELECT(""R" & SDONG & "C" & SCOT & """)")
FAn_DMTHEP = THUTUTHEP
End Function