< návrat zpět

MS Excel


Téma: Je soubor otevřen? rss

Zaslal/a 6.1.2016 13:04

Zdravím,

prosím o radu, nikde jsem se nedopátral...
V jednom souboru mám makro které přidává do zdrojového souboru pořadové číslo a s to vypinkne uživateli do souboru ve kterém pracuje... problém je v tom, že když dva uživatelé spustí makro souběžně, tak obdrží stejné pořadové číslo. Takže bych potřeboval, aby makro vždy zkontrolovalo jestli je zdroják otevřen a v případě, že ano, tak se třeba na chvilku zacyklil... už první řádek mi nefachá... :-/

Set Sesit = Workbooks("Reklamace_zdroj.xlsm")
sesitOtevren = Not Sesit Is Nothing

For i = 1 To 1000000
If sesitOtevren = True Then
MsgBox "Moment"
i = i + 1
Else

Dim NovaReklamace As Integer

For Radek = 1 To 65536
If Cells(Radek, 1) = "" Then
prvniprazdnyradek = Radek
PosledniRadek = prvniprazdnyradek - 1
poslednireklamace = Cells(PosledniRadek, 1)
NovaReklamace = poslednireklamace + 1
Cells(prvniprazdnyradek, 1) = NovaReklamace
Exit For
End If
Next Radek
soubor_do.Save
soubor_do.Close
Range("A1") = NovaReklamace
Exit For
End If
Next i

Zaslat odpověď >

#029050
avatar
Tak částečně pořešeno:
Dim Ret

Ret = IsWorkBookOpen("G:\Reklamace_zdroj.xlsm")

If Ret = True Then
MsgBox "Zdroják je otevřen"
Else
.
.
.

Problém je, že když v 1-2 sekundách spustí makro 2 a více uživatelů najednou, tak se soubor stejně otevře všem a dělá to bordel...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