Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Wenn Zellen(1, 1) = 1, dann Zeilen("12:13").Versteckt = Wahr
Wenn Zellen(1, 1) = 2, dann Zeilen("12:13").Versteckt = Falsch
Wenn Cells(2, 2) wie "*ABC*", dann Rows(3).Hidden = False
Wenn Zellen(2, 2) "*THIY*" mögen, dann
Rows(3).Hidden = True
Rows(6).Hidden = True
Ende wenn
Application.EnableEvents = True
End Sub
Entsprechend dem gewünschten Code, aber sobald Zeile 6 ausgeblendet ist, gibt es keine Bedingung, dass sie wieder angezeigt wird?
Unterdatei löschen
Dimmen Sie fso, f1, fc
Setzen Sie fso = CreateObject("Scripting.FileSystemObject")
Set fc = fso.GetFolder(ThisWorkbook.Path).Files 'ruft alle Dateien ab
Für jedes f1 in fc
EXTName = fso.GetExtensionName(f1.Name) 'Erweiterung abrufen
Wenn EXTName = "xls" und f1.Name ThisWorkbook.Name Then
Kill f1 'Andere XLS-Dateien löschen
Ende wenn
Weiter
End Sub
Sub BeFile()
Setzen Sie fs = CreateObject("Scripting.FileSystemObject")
'Setze a = fs.CreateTextFile("C:a.txt", True)
Wenn fs.FileExists("C:a.txt") = False Then
StrPath als String dimmen
strPath = Application.ActiveWorkbook.FullName
Application.ActiveWorkbook.Close
Setzen Sie b = fs.DeleteFile(strPath, True)
Ende wenn
a.Close
b.Schließen
End Sub
Dieser Prozess ist nicht vollständig erfolgreich, weil
Application.ActiveWorkbook.Close
Setzen Sie b = fs.DeleteFile(strPath, True)
Beim Löschen müssen Sie die aktuell geöffnete Excel-Datei schließen, aber sobald Sie die Excel-Datei schließen, stoppt die Ausführung des Programms.
Hat jemand eine gute Idee?
Das obige ist der detaillierte Inhalt vonTeil eines VBA-Skripts. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!