Pátek, 02 Srpen 2019
  3 Odpovědi
  6.9 tis. Návštěv
0
Hlasy
Zrušit
Používám následující kód VBA, abych umožnil automatické dokončování při psaní v rozevíracím seznamu pomocí pole se seznamem.

Tento kód zakáže funkce "Zpět" a "Znovu" na listech, na které je použit kód VBA. Lze upravit kód VBA, aby tyto funkce umožňoval?

Private Sub Worksheet_SelectionChange (ByVal Target As Range)
'Aktualizovat od Extendoffice: 2018 / 9 / 21
Dim xCombox jako OLEObject
Dim xStr jako řetězec
Dim xWs jako pracovní list
Dim xArr

Nastavit xWs = Application.ActiveSheet
On Error Resume Next
Nastavit xCombox = xWs.OLEObjects("TempCombo")
S xComboxem
.ListFillRange = ""
.LinkedCell = ""
.Visible = False
Konec s
Pokud Target.Validation.Type = 3 Pak
Target.Validation.InCellDropdown = False
Zrušit = True
xStr = Target.Validation.Formula1
xStr = Right(xStr, Len(xStr) - 1)
If xStr = "" Pak Exit Sub
S xComboxem
.Visible = True
.Vlevo = Cíl.Vlevo
.Top = Cíl.Top
.Šířka = Cíl.Šířka + 5
.Výška = Cíl.Výška + 5
.ListFillRange = xStr
If .ListFillRange = "" Pak
xArr = Split(xStr, ",")
Me.TempCombo.List = xArr
End If
.LinkedCell = Cíl.Adresa
Konec s
xCombox.Aktivovat
Me.TempCombo.DropDown
End If
End Sub
Private Sub TempCombo_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
Vyberte Case KeyCode
případ 9
Application.ActiveCell.Offset(0, 1).Aktivovat
případ 13
Application.ActiveCell.Offset(1, 0).Aktivovat
Konec Vybrat
End Sub
Před 2 let
·
#1985
0
Hlasy
Zrušit
Bylo to někdy vyřešeno? Mám stejný problém
Před 2 let
·
#1986
0
Hlasy
Zrušit
Byla tato otázka zodpovězena? Mám stejný problém a opravdu potřebuji funkci vrátit zpět. 
Před 2 let
·
#1987
0
Hlasy
Zrušit
Ahoj Nextgene,

Je nám líto, že po použití jakýchkoli kódů VBA nelze vrátit zpět nebo zopakovat akci. Pokud chcete použít funkci zpět nebo znovu, použijte funkce Kutools.

Amanda
  • Stránka:
  • 1
Na tento příspěvek zatím nebyly učiněny žádné odpovědi.