Вы можете попробовать:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LastRow As Long, i As Long, ParentKey As Long
Dim arr As Variant
Dim booClose As Boolean
With ThisWorkbook.Worksheets("Sheet1")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
If Not Intersect(Target, .Range("C2:C" & LastRow)) Is Nothing And Target.Count = 1 Then
If InStr(1, .Cells(Target.Row, 1).Value, ".") = 0 Then
MsgBox "You are trying to manually change Parent Status."
Else
ParentKey = Mid(.Cells(Target.Row, 1).Value, 1, InStr(1, .Cells(Target.Row, 1).Value, "."))
For i = 2 To LastRow
If InStr(1, .Cells(i, 1).Value, ".") <> 0 Then
If Mid(.Cells(i, 1).Value, 1, InStr(1, .Cells(i, 1).Value, ".")) = ParentKey Then
If .Cells(i, 3).Value = "Closed" Then
booClose = True
Else
booClose = False
Exit For
End If
End If
End If
Next i
For i = 2 To LastRow
If InStr(1, .Cells(i, 1).Value, ".") = 0 Then
If .Cells(i, 1).Value = ParentKey Then
Application.EnableEvents = False
If booClose = True Then
.Cells(i, 3).Value = "Closed"
Exit For
Else
.Cells(i, 3).Value = "Open"
Exit For
End If
Application.EnableEvents = True
End If
End If
Next i
End If
End If
End With
End Sub
Вы могли использовать:
try:
from skynet import SkyNet
inherit_from = SkyNet
except ImportError:
inherit_from = object
class SelfAwareSkyeNet(inherit_from):
pass
Это работает, только если реализация не отличается.
Править: Новое решение после комментария.
попытка: еще поддерживает: пункт
try:
from skynet import SkyNet
except ImportError:
class SelfAwareSkyNet():
pass
else:
class SelfAwareSkyNet(SkyNet):
pass