< návrat zpět

MS Excel


Téma: Excel 2016 - spomalenie rss

Zaslal/a 24.10.2018 18:30

Zdravím,
Po prechode na MS Office 2016 riešim výrazne spomalenie súborov (Excel). Vo verzií 2013 problém nebol. Prišiel som na to, že to spôsobujú činnosti zadávané cez VBA (prechod na 7.1). Skúšal som to ošetriť deklaráciami API funkcií -nepomohlo. Príklad spomaleného kódu:
Sub BezText()
Dim sTxt As String
Dim x As Integer, y As Integer
Dim bunka As Range
On Error Resume Next
sTxt = " ****** Vitajte, pre zápis použi ponuku po stlačení pravého tlačítka myši! ******"
Set bunka = ActiveSheet.Range("B1")
For y = 1 To 1
For x = 1 To 30
Start = Timer
delay = Start + 0.15
Do While Timer < delay
bunka = Space(x) & sTxt
DoEvents
Loop
DoEvents
Start = Timer
delay = Start + 0.15
Next x
Next y
Set bunka = Nothing
End Sub

Samozrejme je toho viacej, ale nie všetko môžem publikovať. Skúšal som viacej možnosti, no bez úspechu. Stretli ste sa s týmto problémom niekto? Ďakujem dopredu za akúkoľvek radu.

Zaslat odpověď >

#041751
avatar
Děkujeme za komentář, pane školiteli. Hodně jste nás opět naučil.citovat
#041830
avatar
Možno je to pre niekoho nepochopiteľné (Jaja123), no s podobným problémom sa "trápi" dosť veľká skupina užívateľov vo svete. Súvisí to s prechodom na MS Office 2013-2016. Kódy, ktoré v Office 2010 pracovali primerane, teraz výrazne spomalili.
Skúšal som už niekoľko možností, no stále bez prijateľného výsledku. Je tu na fóre pár šikovných "borcov", vie niekto z nich poradiť? ĎAKUJEM za každý podnet.citovat
#041831
avatar
Můj příspěvek reagoval pouze na komentář uživatele xlnc, který jej následně odstranil.

Případně smazal on sám, nebo admini tohoto fóra, celý jeho účet ;-). Nebylo to nic proti vám, pouze jsem reagoval na další arogantní příspěvek pan Pecháčka (xlnc)...citovat
#041832
elninoslov
Skúsil som to na 2010 vo virtuálke a na 2019 na PC, ide to rovnako. V Exceli sa Vám bunka asi ani prekresľovať rýchlejšie ako tých 0,15 nebude.
Skúste toto:
Sub BezText()
Dim sTxt As String
Dim x As Integer
Dim bunka As Range
Dim delay As Single

On Error Resume Next
sTxt = " ****** Vitajte, pre zápis použi ponuku po stlačení pravého tlačítka myši! ******"
Set bunka = ActiveSheet.Range("B1")
Set TXT = ActiveSheet.Shapes("TXT").TextFrame2.TextRange

For x = 1 To 30
delay = Timer + 0.15
Do While Timer < delay
DoEvents
Loop
bunka = Space(x) & sTxt
DoEvents
Next x

Set bunka = Nothing
End Sub
citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje