Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  16 17 18 19 20 21 22 23 24   další » ... 53

Můžu poslat příklad s použitím application.ontime, kdy se pouští pouze 1x a ne zamknutí by vadit nemělo, otestováno s příkladem, který po 10s přičte 1.
Dim ind As Boolean

Public Sub spust()
ind = True
Application.OnTime Now + 10 / 24 / 3600, "procedura"
End Sub

Public Sub zastav()
ind = False
End Sub

Public Sub procedura()
If ind = True Then
Cells(1, 1) = Cells(1, 1) + 1
Application.OnTime Now + 10 / 24 / 3600, "procedura"
End If
End Sub

Zkusil bych
if ActiveWorkbook.ReadOnly = true then ...

M@

M@

Buď by to šlo přes ADO (jde-li jen o data), nebo se koukni na předchozí téma - když se to trochu upraví, tak i toto je použitelné, byť ne nejelegantnější.

M@

myslím že je :-)
zkus přílohu, snad není třeba to komentovat :-), kdyby jo, tak se ozvi.

M@

Tak z toho už jsem matěj :-).
Asi začnem od začátku, ne? :-)
Máš nějaký souhrnný soubor, kam chceš načítat data z několika různých souborů na řekněme síťovém disku X:\Data\
ANO / NE

Načítat chceš data ze všech souborů vždy z jednoho konkrétního listu, který znáš.
ANO / NE

Data se budou načítat do jednoho souboru s tím že co zdrojový soubor, to jeden list v cílovém souboru.
ANO / NE

Data se mají ve zdrojových souborech vybírat dle nějakých kritérií, hodnotově, nebo sloupcově (ANO), nebo vždy všechna (NE) na daném listu?
ANO / NE

To víš, my ti do hlavy ani pod ruce nevidíme :-).

M@

skoro všechno jde, otázka je má-li to smysl :-), případně odkud se data berou, je to statické, či funkční?

Oblast mém definovanou skrze proměnné:

max = Sheet.UsedRange.Rows.Count + prvni
počet použitých řádků + počet prázdných řádků na začátku

Seet.Range("A8:I" & max).Copy ActiveSheet.Cells(rd, 1)
kopíruje buňky od buňky A8 po buňku I posledního řádku.
Vkládá na souhrnný list do řádku rd, sloupce A. řádek rd je proměnný a s každnou načtenou oblastí se mění.

M@

Asi mi přijde, že to máš zbytečně komplikovaný - proč prostě nepřenést vše a nekomplikovat si život vzorci a propojení na originály? Možná mi jen něco uniká :-). Zkus přílohu.

M@

viz. příloha.

M@

příklad v příloze.


Public Sub kontrola()
Dim rd As Single
Dim sl As Single
Dim jmeno As String

rd = 5 ' první řádek
sl = 2 ' první sloupec

Do While Cells(rd, sl + 1) <> "" Or Cells(rd + 1, sl + 1) <> ""
If Cells(rd, sl) <> "" Then jmeno = Cells(rd, sl)
If Cells(rd, sl + 1) <> "" Then
If Left(Cells(rd, sl + 1), Len(jmeno)) = jmeno Then Cells(rd, sl + 2) = "OK" Else Cells(rd, sl + 2) = "NOK"
End If

rd = rd + 1
Loop

End Sub


M@

více způsoby :-).
1) makrem v cyklu dosadit zmíněný vzorec
2) napsat si vlastní funkci a použít tuto
3) projet to v cyklu makrem a stejným způsobem porovnat hodnoty pomocí VBA a zapsat statický výsledek.


if cells(radek,sloupec) = left(cells(radek,sloupec+1),len(cells(radek,sloupec))) then cells(radek,sloupec+3)="OK" else cells(radek,sloupec+3)="NOK"

Za předpokladu že ve sloupci B budeš mít prvek rozkopírován všude, tak lze použít porovnávání:
=KDYŽ(B3=ZLEVA(C3;DÉLKA(B3));"OK";"NOK")
M@

Zlobit se nebude :-).

relativní adresu
NameCSV = ThisWorkbook.Path & "\cesta k souboru\soubor.csv"
změníš na absolutní
NameCSV = "\\SERVER\SLOŽKA\SOUBOR.CSV"

M@

Tak to zkus.

Udělal jsem vlastní "databanku" ke které se v pracovním souboru adresa uvádí na listu DB v buňce G1.
V pracovním souboru je modul s makrem pro načtení dat z databanky a pro přidání do databanky, což si můžeš upravit dle potřeby. Přidání do databanky proběhne ihned po zadání a to tak, že si nejprve stáhne aktuální data, porovná je s novou hodnotou a pokud neexistuje, tak přidá do databanky a hned na to si opět stáhne data.
Seznam na zadávacím listu jsem udělal jen v těch prvních 3 řádcích a to pomocí pojmenovaných oblastí odkazujících se na oblasti kam se načítají data z databáze.
Co jsem neudělal je volání načítacího makra po spuštění, ale to věřím, že zvládneš.
A možná tě pojmenované oblasti na jiném listu inspirují tak, že na tom zadávacím listu zruším ty skryté sloupce :-)

M@

M@


Strana:  1 ... « předchozí  16 17 18 19 20 21 22 23 24   další » ... 53

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse