Hirdetés

2024. május 2., csütörtök

Gyorskeresés

Hozzászólások

(#801) haromegesz14


haromegesz14
aktív tag

Már tárgytalan!

[ Szerkesztve ]

10 féle ember létezik, aki ismeri a bináris számrendszert, és aki nem!

(#802) csdm


csdm
senior tag

Hali!
Emelt informatika érettségire készülök. Elakadtam egy feladatnál, és hiába nézem meg a megoldást, nagyából értem, bár magamtól nem tudnám megcsinálni, emiatt próbálok olyan megoldást találni, ami akkor és ott eszembe is jutna.
3.feladaton belül, a 7. pont (9.oldalon) ami a kritikus :

7. 2001. augusztus 4-én Kardos Norbert azzal az elhatározással lépett be a klub ajtaján, hogy
aznap minden jelen lévő hölgyet megtáncoltat. Vajon sikerült neki? Készítsen lekérdezést,
amely felsorolja azokat az akkor jelen lévő hölgyeket, akikkel aznap nem táncolt – ha van
ilyen egyáltalán! (7kardos)

Feladatlap + Forrás

Ami sikerül:
Két külön lekérdezésbe kihozni, hogy kik táncoltak aznap, (13 db), és az, hogy a Kardos Norbertnek kivel sikerült táncolnia (10 db). Nyilvan 3 db marad ki, akinek meg kéne jelennie a megoldásban, ám nem tudom hogy kéne megoldani, hogy a fenti két segédlekérdezéssel, azt a 3 db nevet kiírassam.. :S

Megoldást itt lehet megnézni, ahol szintén 3 név szerepel.

[ Szerkesztve ]

(#803) belarnd


belarnd
csendes tag

Hi Guruk...

valamikor nagyon rég win3.1 alatt tanították az acces akkori változatát, de azóta bele se szagoltam. Ráadásul főleg pascalban programoztam annó. -most új munkahely és bele a mélyvízbe.. Acces adatbázist kell készítenem, és elakadtam egy két helyen. Végig próbáltam böngészni az eddigieket, és találtam sok jó dolgot, de még a negyedéig sem jutottam... Alapvető dolgokban akadtam el, és kellene a segítség.

Van egy fő táblám, aminek a számlálójához rendelve van sok altábla, egyik sincs elsődleges kulcsal ellátva, és mind tartalmaz egy értéket, ami sokszor ismétlődhet, gyakran nem is egymás után, ez a fő tábla indexével egyezik meg.

A problémám az, hogy a DlookUp utasítással eddig le tudtam venni egy adatot, ha leszűrtem de ez esetben több adat is van. ezt tudom is mennyi, és ezeket kellene sorba beolvasnom, viszont a DLookUp utasítás csak a szűrő feltételének megfelelő elsőt olvassa. hogy lehet a többit is kiolvasni...

itta a rutin amit írtam...
Private Sub SZUROHOSSZ_GotFocus()
Dim pf, pa, i As Single
If SZURO_DB > 0 Then
If IsNull(Me.SZUROHOSSZ) Or Me.SZUROHOSSZ = 0 Then
SZUROHOSSZ = 0
For i = 1 To SZURO_DB
pf = DLookup("[Perem_felső]", "[Kat_kö_szűrő]", "[Katkönyvazonosító] = " & Azonosító)
pa = DLookup("[Perem_alsó]", "[Kat_kö_szűrő]", "[Katkönyvazonosító] = " & Azonosító)
SZUROHOSSZ = SZUROHOSSZ + (pa - pf)
Next

Else

End If
End If
End Sub

Lehet hogy van sokkal jobb megoldás is de még ehez láma vagyok....

(#804) Fire/SOUL/CD válasza belarnd (#803) üzenetére


Fire/SOUL/CD
félisten

"Ha egynél több mező felel meg a feltételeknek, akkor a DLookup függvény az első előfordulást adja eredményül." ([link])
Magyarul DLookup-al sehogy. Az egyik járható út, hogy SQL lekérdezéssel létrejött eredménytáblán szaladsz végig.

Látatlanba nagyon nehéz jó tanácsot adni, illetve ha az adatbázisok és adatbázis-kapcsolatok hibásak (ami annak tűnik, tekintve, hogy mit is írtál a fő- és altáblákkal kapcsolatban), akkor addig nem is érdemes továbbmenni. Minden adatbázis-kezelő alkalmazás esetén a legfontosabb dolog, a megfelelő struktúrájú táblázatok létrehozás valamint ezek kapcsolatainak tökéletes beállítása. Ha ebben hibádzik valami, akkor az egészet megette a fene, csak szívás van vele később.

[ Szerkesztve ]

Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)

(#805) gyga


gyga
senior tag

kellene egy kis help.

Van egy pársoros táblám, nem is ez a lényeg de kellene egy lekérdezést kreálni egy mezőben levő 3 legnagyobb adatot kellene előcsalni. Milyen képlettel kell a lekérdezésbe tenni? A 3 legnagyobb adat nem egyforma röviden ha 1-10 ig lenne akkor a 8-9-10 -et kellene kapni.

A kisebbség is számíít, teszkó.

(#806) G.A.


G.A.
aktív tag

Üdv!

Lenne egy nagy gondom.

Accessben kéne csinálnom egy összetett adatbázist jelentésekkel lekérdezésekkel űrlapokkal.

A koncepció megvan csak az űrlap kivitelezésében akadtam el.

A "téma": bevásárlólista.

mezők: Bolt neve, mikor vásároltam, mit(itt van 3-4 alcsoport pl: húsok-felvágottak-sonka-gála), mennyiért

Olyan űrlapot akartam létrehozni, ami segítségével ezeket mind könnyen hozzá lehet adni a táblázatomhoz. Megvan a vezérlők között a gomb is, varázslóval meg tudom adni, hogy mentsen, de nem teszi. Nem találom azt a menüt, hol állíthatnám ezt be. A mcro kódsort megtaláltam, de a kódoláshoz nem értek.

Valami ilyesmire gondoltam.

Tudna valaki segíteni?

GA

(#807) csdm


csdm
senior tag

Hogy lehet megoldani, hogy adatbázisba, új rekord felvételénél, egy adott mezőt egy legördülő listából lehessen kiválasztani? Sikerül beállítani, a legördülő listát, de nem tudom hogyan kell megadni, hogy mikből lehet választani.

(#808) Tosee válasza csdm (#807) üzenetére


Tosee
őstag

Hozz létre egy új táblát a listában látni kívánt rekordokkal...
Nyisd meg tervező nézetben azt a táblát, amiben beállítottad az adott rekordra a listás vezérlőelemet!
Kattints a listás mezőnévre, majd alul kattints a megjelenítés fülre... és a sorforrásnál állítsd be az előbb létrehozott táblát!

A4-es rajzlapom, hasonló típusú Audira cserélném!

(#809) G.A. válasza G.A. (#806) üzenetére


G.A.
aktív tag

Már tárgytalan.

(#810) macilaci78


macilaci78
nagyúr

Kellene némi segítség Access terén, mert kicsit elakadtam.

MAGUS Új tekercsek című könyvéből (mintegy 90Mb pdf-ben) a képzettségrendszert vinném be.
A lényeg: öt fokozatú képzettségrendszer 147db képzettséggel, melyek itt-ott egymásra épülnek, e mellett 11 tulajdonság 18 értékéből előfeltételek vannak fokonként.

Amit szeretnék: beírom, milyen képzettséget szinten szeretnék, és kilistázza a szükséges dolgokat hozzá.

A bővebb segítséghez még rizsáznom kellene, privátban folytassuk azzal a pár emberrel, aki elég motivált ebben. :U

Itt tartok:
http://prohardver.hu/dl/upc/2012-05/27/39201_hidttqkegagc2ccg_ut_access_1.jpg

[ Szerkesztve ]

Ha minden kötél szakad, nem kell félni az akasztástól!

(#811) sanzi89


sanzi89
addikt

Ezzel mégis milyen szintaktikai hiba van?

INSERT INTO log (DateTime, TypeID) VALUES ({ ts '1990-12-31 00:00:00' } , 1)

Access adatbázis, ODBC-n kerezstül Delphiben szeretném elérni.

"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."

(#812) sanzi89 válasza sanzi89 (#811) üzenetére


sanzi89
addikt

A gond az volt, hogy a DateTime foglalt név, ezért kiakadt. A megoldás az lett, hogy a mezőneveket el kell hagyni, és minden létező mezőnek a táblában értéket kell adni így:

INSERT INTO log VALUES ( {ts '1995-12-31 01:15:15'}, *, *, '**', '**', *, *, **, *, *)

"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."

(#813) spiky03


spiky03
veterán

Sziasztok!

Hogy tudok súlyozott átlagot számolni access-ben?
Ez kellene egy lekérdezéshez.

Thx
:R

SuperHeRo - Eladó! Anthem MRX710 + extrák!

(#814) dangerzone


dangerzone
addikt

Srácok, adatlap nézetnél hogyan tudok új sort beszúrni az adatbázisba? ( nem a végére :) )

(#815) retes


retes
aktív tag

Szaisztok,

Nekem egy egész egyszerű kérdésem lenne. Adott egy Access adatbázis fájl. Egyszerre több embernek kellen azt szerkeszteni egy időben. Megoldható? Ahogy most megy: Az első megnyitja a megosztásról neki nincs baja, a többi embernek meg nem engedi megnyitni, csak úgy, ha access-ben megnyitással tallózom. Be lehet állítani, hogy ne csak ezzel a megnyitás tallózással menjen?

Előre is nagyon köszönöm a segítséget!

A tudás mindenkié!!!

(#816) Kope91


Kope91
csendes tag

access-ben létezik olyan mint excel-ben, ha egy cella(rekord), tartalmaz egy szót, és ugyanazt egy másikba akarom beleirni, akkor ajánla fel, hogy az legyen, mert elég nagy adatbázist kell csinálnom és akkor a gépelési hiba is kisebb (excel ezt fel tudja ajánlani)

(#817) Oly válasza Kope91 (#816) üzenetére


Oly
senior tag

A tábla kitöltésénél elvileg működik, de űrlapon tudsz lenyíló listát is csinálni, hogy abból választhatod ki az értéket.

SonyEricsson T20 - T68 - T610 - K700 - W800 - K750 - K800 - C702 - P1 - MOTO Defy - Galaxy S Advance - Galaxy S4 - Lumia 820 - Honor 7 - iPhone 5S

(#818) CruiseR


CruiseR
csendes tag

Sziasztok!

Volna egy olyan gondom, hogy van egy fájlom ami Access2003-ban és Access2007-ben tökéletesen működik viszont Access2010-ben viszont nem működik... a fájl megyitása után ezzel az üzenettel fogad:
http://kepfeltoltes.hu/view/120917/_zenet_www.kepfeltoltes.hu_.jpg

Az "Ok" gomb megnyitása után ez jön fel. :
http://kepfeltoltes.hu/120917/_zenet_2_www.kepfeltoltes.hu_.jpg

Ha valaki tudja a megoldást, hogy Access2010-ben működjön azt nagyon megköszönném!

Üdv

(#819) walu57


walu57
csendes tag

Sziasztok! Lenne egy olyan kérdésem, hogy lehet azt megoldani ,hogy van egy adatbázis ezt elmentem, tovább küldöm és tudjanak mások is rögzíteni de a már eltárolt számla információkat ne lehessen módosítani de újabb számlát tudjon rögzíteni.

Köszi a segítséget előre is.

(#820) Kobe


Kobe
veterán

üdv

egy olyan adatbázist szeretnék létrehozni, ami képes az alábbiakra:. Igazából a tözse már emgvan a dolognak, csak 1-2 extra funkció is szükséges, amihez makrót kellene írni

A lényeg hogy van egy fő adattábla amit folyamatos jelleggel töltök fel, és ezt egy űrlapon keresztül teszem ezt. A feltöltött adatokból minden hónapban készítek egy kimutatást az előző havi adatokból, exceles pivot táblát. Van egy üdvözlő űrlap, amin vezérlőgombok vannak, bezárás, riport készítése, űrlap feltöltése, stb. Ezeket már beállítgattam, kivéve a makrózott riport futtatást.

- azt szeretném hogy ha vki megnyitja ezt az adatbázist, akkor pl csak az űrlap jelenjen meg, egyéb gombok, vagy az oldalsáv menű le legyen tiltva, ne lehessen szerkeszteni. Ezt hogy tudom beállítani ? Akár a struktúra jelszavas védelmére is gondoltam, admin jogok beállítása pl

- ugyanez igaz az adattáblát feltöltő űrlapra, csak az jelenjen meg, és ne egész ablakban

- mennyire bonyolult egy olyan makrót írni egy adott vezérlőgombra, ami az előző havi adatokat beimportálja excelbe, és automatikusan elkészíti rá a pivot táblát ? gondolom itt már olyan access makró kellene ami képes megnyitni, meghívni excelt, menteni a filet, stb

-jó lenne, ha mondjuk ennek a makrünak futtatása előtt a progi automatikusan készítene egy biztonsági másolatot az adatbázisról egy emgadott hálózati mappába

ha valamelyikre tudjátok a választ örömmel veszem :) angol access 2010 et használok

[ Szerkesztve ]

(#821) techtro


techtro
csendes tag

Sziasztok!

Nekem az lenne a kérdésem hogy csináltam egy accdb kiterjesztésű fájlt access2012 ben. Szeretném vagy belső hálózaton vagy neten közzé tenni.
A táblákat exportálni share point webhelyre sem tudok az összes mező üres és a hozzá adás sem jó.
hibaüzenet: nemtudott a megadott helyhez csatlakozni ellenőrizzem vagy vegyem fel a kapcsolatot a rendszergazdával
amit beirok : http://www.valami.hu/

ha pedig a közzétételre megyek rá :

ellenőrzöm a kompatibilitást ami rendben van ,
majd kiszolgálo url: http://www.valami.hu
hely neve: Projektek ( ami alaból ott van megjelölve neki )

és kis ellenőrzés után hiba: az adatbázis inicializálása közben hiba történt.

Valaki tudna nekem ebben segíteni ? Nagyon fontos lenne és hatalmas segítség.

Előre is köszönöm

A természet élőben szebb mint a FULLHD

(#822) gyga


gyga
senior tag

Sziasztok.

Csináltam egy űrlapot amire kellene egy olyan gomb rá ami menti a beírt adatokat és ki üríti az űrlapot plusz még frissít egy lekérdezést. Hogyan? (access 2010)

[ Szerkesztve ]

A kisebbség is számíít, teszkó.

(#823) Mutt válasza gyga (#822) üzenetére


Mutt
aktív tag

Hello,

Feltételezem hogy van egy tábla (tblData), ahova kell mentened az űrlapon lévő dolgokat (amelyek legyen vInput1, vInput2, stb.). A gomb neve meg bAdd. A lekérdezés pedig "Lekérdezés"

VBA kódban vmi hasonló kell neked, de ezen még finomítanod kell:

Private Sub bAdd_Click()
Dim uSQL As String

DoCmd.SetWarnings False

'adatok mentése kezdet
If Me.vInput1 <> "" and Me.vInput2 <> "" Then
uSQL = "INSERT INTO tblData VALUES ("
uSQL = uSQL & Me.vInput1 & ",'"
uSQL = uSQL & Me.vInput2 & "')"
CurrentDb.Execute uSQL
Else
Msgbox "Nincs adat megadva"
End If
'adatok mentése vég

'adatok kiürítése kezdet
Me.vInput1 = ""
Me.vInput2 = ""
DoCmd.GoToControl Me.vInput1 'első beviteli mezőre ugrás
'adatok kiürítése vég

'lekérdezés futtatása kezdet
DoCmd.OpenQuery "Lekérdezés" 'ha látni akarod az eredményét
CurrentDB.Execute "Lekérdezés" 'ha nem akarod látni, csak lefuttatni
'lekérdezés futtatása vég

DoCmd.SetWarnings True

End Sub

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#824) Mutt válasza Kobe (#820) üzenetére


Mutt
aktív tag

Hello,

- azt szeretném hogy ha vki megnyitja ezt az adatbázist, akkor pl csak az űrlap jelenjen meg, egyéb gombok, vagy az oldalsáv menű le legyen tiltva, ne lehessen szerkeszteni. Ezt hogy tudom beállítani ? Akár a struktúra jelszavas védelmére is gondoltam, admin jogok beállítása pl

Ezen a linken van egy jó cikk arról, hogy hogyan lehet lekorlátozni a hozzáférést.

A lényeg, hogy az adatbázis tulajdonságait lehet módosítani VBA-ban:
StartupShowDBWindow - ki/be lehet kapcsolni a navigation pane-t
AllowBuiltinToolbars - el lehet rejteni az alap eszköztárat
AllowBypassKey - letiltja hogy az automatikusan induló makrókat nem lehet SHIFT-el megkerülni
AllowBreakIntoCode - progamkód hiba esetén nem nyitja meg a VB szerkesztőt
AllowFullMenus - nem jelenik meg a menű tábla, lekérdezés stb. módosításához
AllowToolbarChanges - le lehet tiltani az eszköztár testreszabását
AllowSpecialKeys - fontos gyors billentyűket tilt le

Fontos, hogy legyen mentésed az adatbázisrül mert kizárhatod magad!

Én úgy használom, hogy létrehozok egy formot (többnyire Start Page), amire kirakom a gombokat amikkel
lehet a lekérdezéseket, űrlapokat, táblákat stb. elindítani. A File -> Options -> Current Database alatt
beállítom, hogy a "Start Page" form nyíljon meg automatikusan.

Ezen a formon van egy "Lock Database" és egy "Unlock Database" gomb, mindkettő alapból el van rejtve.
És csak adott feltételek (pl. ha egy adott felhasználó vagy fájl - debug.txt - létezésekor) lesznek láthatók.

pl. debug.txt fájl esetén így

Private Sub Form_Open(Cancel As Integer)

If Dir(CurrentProject.Path & "\debug.txt") = "debug.txt" Then
bLock.Visible = True
bUnLock.Visible = True
End If

End Sub

A gombokra pedig ezen kódok vannak:

Private Sub bLock_Click()

ChangeProperty "StartupShowDBWindow", dbBoolean, False
ChangeProperty "AllowBuiltinToolbars", dbBoolean, False
ChangeProperty "AllowFullMenus", dbBoolean, False
ChangeProperty "AllowToolbarChanges", dbBoolean, False
ChangeProperty "AllowBreakIntoCode", dbBoolean, False
ChangeProperty "AllowSpecialKeys", dbBoolean, False
ChangeProperty "AllowBypassKey", dbBoolean, False
Application.SetOption "Show Hidden Objects", False

End Sub

Private Sub bUnLock_Click()

ChangeProperty "StartupMenuBar", dbText, "(default)"
ChangeProperty "StartupShowDBWindow", dbBoolean, True
ChangeProperty "StartupShowStatusBar", dbBoolean, True
ChangeProperty "AllowBuiltinToolbars", dbBoolean, True
ChangeProperty "AllowFullMenus", dbBoolean, True
ChangeProperty "AllowToolbarChanges", dbBoolean, True
ChangeProperty "AllowBreakIntoCode", dbBoolean, True
ChangeProperty "AllowSpecialKeys", dbBoolean, True
ChangeProperty "AllowBypassKey", dbBoolean, True
ChangeProperty "NavPane Closed", dbBoolean, True

End Sub

A fentiek az alábbi függvényt hívják meg:

Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer
Dim dbs As Database, prp As Property
Dim CurrentPropVal As Variant
Const conPropNotFoundError = 3270

Set dbs = CurrentDb
On Error GoTo Change_Err

CurrentPropVal = dbs.Properties(strPropName)
If CurrentPropVal <> varPropValue Then
dbs.Properties(strPropName) = varPropValue
End If
ChangeProperty = True
Change_Bye:
Exit Function

Change_Err:
If Err = conPropNotFoundError Then 'Property not found.
Set prp = dbs.CreateProperty(strPropName, varPropType, varPropValue)
dbs.Properties.Append prp
Resume Next
Else
' Unknown error.
ChangeProperty = False
Resume Change_Bye
End If
End Function

- mennyire bonyolult egy olyan makrót írni egy adott vezérlőgombra, ami az előző havi adatokat beimportálja excelbe, és automatikusan elkészíti rá a pivot táblát ?

Ha importálni akarsz Excel fájlból Access-be, akkor a TransferSpreadhseet-et használd:

pl.
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Imported", CurrentProject.Path & "\adatok.xls", True

Ha exportálni akarsz Excel-be akkor hasonló a fentihez csak acExport változatban, azonban miért nem linkeled be Excel-be (Data fül -> Connections) az adatbázis tábláját, készíted el a Pivot-ot és állítod be mindkettőt automatikus frissítésre megnyitáskor?

-jó lenne, ha mondjuk ennek a makrünak futtatása előtt a progi automatikusan készítene egy biztonsági másolatot az adatbázisról egy emgadott hálózati mappába

Ezen a linken van egy tökéletes megoldás.

üdv

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#825) Kobe válasza Mutt (#824) üzenetére


Kobe
veterán

kösz a tippeket, találtam én is pár egész korrekt kódsort, csak vmiért nem tökéletes még az átírása :)

közben próbálgattam, és odáig eljutottam hogy csináltam egy queryt, illetve macro builder segitségével egy gombhoz hozzárendeltem egy makrót, ami lefuttatja a queryt, és rögtön kiexportálja és elmenti egy excel fileba a kapott rekordokat. Idáig okés, macro builder is egész egyszerűen megoldja, nem feltétlen kell manuálisan megírni VB ben.

Na ezt folytatandó, akartam rögzíteni egy makrót excelben ami megcsinálja magát a pivot táblát az importált adatokból, gondoltam ennek az exceles makrónak a VB kódját majd átmásolom accessbe egy modulba, és a meglévő makrómhoz hozzáadok egy plusz "RunCode" lépést.
Igen ám, de az első lépés az lenne, hogy a letöltött excel adattábla headerjébe berakok még egy oszlopot a legvégére - pl Státusz, és annak a celláiban egy egyszerű If képlet lenne. Akárhogy próbálom importálgatni az adatokat, amint elkezdem excelben rögzíteni a makrót, és hozzáadnám ezt a plusz cellát a headerhez, kajak kifagy az egész excel.....

[ Szerkesztve ]

(#826) klambi


klambi
addikt

szevasztok!
van 1 feladatom:
"Kapcsolja össze a két adattáblát úgy, hogy a táblák összes rekordja részt vegyen a kapcsolatban!"
van 2 táblám, de nem tudom pontosan mit kéne csinálnom, access-t nem nyomkodtam és sql-es vagyok...
itt ezt hogy csinálom meg?

"Mond szépen angolul: Gyors róka!"

(#827) klambi válasza klambi (#826) üzenetére


klambi
addikt

bocs az még hozzá lenne, hogy azt hol állítom be ha törlök akkor a hozzá kapcsolódó adatok is törlődjenek...
?

"Mond szépen angolul: Gyors róka!"

(#828) Mutt válasza klambi (#826) üzenetére


Mutt
aktív tag

Hello,

bocs az még hozzá lenne, hogy azt hol állítom be ha törlök akkor a hozzá kapcsolódó adatok is törlődjenek...
1. Ha a két táblát úgy kötöd össze, hogy a kulcsmezőt bal klikkel ráhúzod a külső kulcsra a másik táblában Query Design-ban. A létrejött kapcsolatra duplán kattintva kapsz egy menüt (Edit relationship), ahol alul be tudod állítani ezt. Angolban "Cascade Delete Related Records" opció.
2. Ha már korábban definiálva lettek a kapcsolatok, akkor a Database Tools menűben kell a kapcsolaton az "Edit relationship"-et használni.

Youtube video.

"Kapcsolja össze a két adattáblát úgy, hogy a táblák összes rekordja részt vegyen a kapcsolatban!"
Ezen adatok alapján nekem egy sima UNION-nak tűnik, ami pont úgy műkődik mint a SQL-ben, vagyis

select1
UNION
select2;

A feltételek ugyanazok itt is, vagyis az oszlopok száma és a típusa meg kell hogy egyezzen.
Access-ben UNION-t úgy tudsz egyszerűen írni, hogy létrehozod külön-külön a lekérdezéseket, majd átmész SQL nézetbe és az első lekérdezésben kitörlöd a lekérdezés végéről a pontosvesszöt, majd beírod hogy UNION és bemásolod a második lekérdezést.

Ha a két táblában van közös mező, amelyekkel tudsz kapcsolatot létrehozni, akkor:
- inner join esetén mindkét táblából csak azok az értékek fognak megjelenni, ahol a mezők egyeznek
- outer join esetén választhatsz hogy a bal vagy jobb oldali tábla összes eleme és a másik táblából csak az egyező elemek jelenjenek meg.
Ezen opciók valamelyikét a kapcsolatra kattintva tudod beállítani.
Ez esetben azonban az összes rekord nem fog résztvenni, csak azon rekordok amelyekre a kapcsolati beállítások igazak.

üdv.

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#829) klambi válasza Mutt (#828) üzenetére


klambi
addikt

:R

"Mond szépen angolul: Gyors róka!"

(#830) Kobe válasza Mutt (#824) üzenetére


Kobe
veterán

a biztonsági mentés része nagyon flottul működik, egyedül 1 dolgot szeretnék megváltoztatni a kódban, hogy a backup copyt ne ugyanabba a mappába mentse, ahol az adatbázis van, hanem mondjuk egy azon belüli "Backup" almappába

erre van esetleg valami ötlet ? :)

Dim dbPath As String
Dim OldDbName As String
Dim NewDbName As String
Dim DbBackup As String
Dim Response As Integer
Dim fs As Object

dbPath = Application.CurrentProject.Path
OldDbName = "OldDatabaseName.mdb"
NewDbName = "BackUp" & "_" & Format(Date, "yyddmm") & ".mdb"
DbBackup = Mid(OldDbName, 1, Len(OldDbName) - 4) & "_" & Format(Date, "yyddmm") & ".mdb"

If MsgBox("Do you want to make a compacted back-up copy of this database named " & vbCrLf & "'" & NewDbName & "'", vbYesNo, "Continue") = vbYes Then
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile dbPath & "\" & OldDbName, dbPath & "\" & DbBackup
DBEngine.CompactDatabase dbPath & "\" & DbBackup, dbPath & "\" & NewDbName
Set fs = Nothing
Else

End If

a hozzáférések beállításával még kicsit hadilábon állok, lehet ahhoz is kérnék majd kis segítséget :) igazából nem debug.txt alapján szeretném kiosztani a jogokat, hanem mondjuk userid alapján, amivel a hálózatra is be vannak jelentkezve a többiek

[ Szerkesztve ]

(#831) gyga válasza Mutt (#823) üzenetére


gyga
senior tag

köszi

A kisebbség is számíít, teszkó.

(#832) Mr.Csizmás


Mr.Csizmás
félisten

üdv,

egy adatbázist szeretnék létrehozni, ami kezelhető, és bővíthető, a következőek szerint:

adott a cégnél ~40 ember, akinek a különféle dolgait (jogosítványok érvényessége, milyen dolgokat kezelhet, stb) kellene nyilvántartani, valamint a lejárati dátumokat kilistáztatni, és módosítani, hozzáadni embereket.

erre vannak kész sablonok, vagy inkább próbáljak meg egyet összetákolni?

"Szólítson csak Cirminek." | B&B XI | 3D nyomtatás Bp és környéke |

(#833) Mutt válasza Kobe (#830) üzenetére


Mutt
aktív tag

Hello,

...a backup copyt ne ugyanabba a mappába mentse, ahol az adatbázis van, hanem mondjuk egy azon belüli "Backup" almappába...

Ezzel menni fog, ha más mappa nevet akarsz akkor az ArchivePath konstanst változtasd meg.

Private Sub bImport_Click()
Dim dbPath As String
Dim CurrentFile
Dim CurrentName As String
Dim CurrentExtension As String
Dim BackupName As String
Dim fs As Object

'alkönyvtár neve
Const ArchivePath As String = "\Backup"

'aktuális könyvtár
dbPath = CurrentProject.Path

CurrentFile = Split(CurrentProject.Name, ".")

'aktuális fájlkiterjesztés
CurrentExtension = CurrentFile(UBound(CurrentFile))

'aktuális fájlnév
CurrentName = Left(CurrentProject.Name, Len(CurrentProject.Name) - Len(CurrentExtension) - 1)

'új fájlnév
BackupName = "Backup_" & CurrentName & "_" & Format(Date, "YYYYMMDD") & "." & CurrentExtension

'másolat készítése
If MsgBox("Do you want to make a compacted back-up copy of this database named " & vbCrLf & "'" & BackupName & "'", vbYesNo, "Continue") = vbYes Then
'ha nem létezik a célkönyvtár akkor létrehozzuk
If Dir(dbPath & ArchivePath, vbDirectory) = Empty Then MkDir (dbPath & ArchivePath)
'ha még nem létezik a célkönyvtárban azonos névvel fájl létrehozzuk
If Dir(dbPath & ArchivePath & "\" & BackupName) = Empty Then
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFile dbPath & "\" & CurrentProject.Name, dbPath & ArchivePath & "\" & BackupName
Set fs = Nothing
Else
MsgBox "File already exists!", vbOKOnly, "Error"
End If
End If
End Sub

...nem debug.txt alapján szeretném kiosztani a jogokat, hanem mondjuk userid alapján...

Az Environ("UserName") visszaadja az aktuális felhasználó nevét Windowsban.
A név alapján pedig már tudod befolyásolni, hogy ki mely gombokat láthassa.

Érdemes a Form_Load() eventbe tenni vmi ilyet:
Select Case Environ("UserName")
Case "Zoli"
--lista hogy mely elemeket láthatók neki, pl. bUnLock.Visible = True
Case "Tibi"
--másik felhasználó listája
Case Else
bUnLock.Visible = False
End Select

üdv.

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#834) Mutt válasza Mr.Csizmás (#832) üzenetére


Mutt
aktív tag

Hello,

...adott a cégnél ~40 ember, akinek a különféle dolgait...

Személyes adatokra a Address book database sablon egész jónak tűnik.

Az Asset tracking database sablonból is tudsz meríteni, vagy kiegészíteni a kívánalmaknak.

üdv.

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#835) Mutt válasza Mutt (#833) üzenetére


Mutt
aktív tag

Hogy teljes legyen a kép és profibb legyen a megoldás esetleg hozz létre egy táblát az adatbázisban amelyben a UserID-k és a jogosultságok vannak felsorolva.

Íme egy példa, a tábla neve legyen tblUsers és legyenek benne a UserID és Role mezők.
A Role mezőben pl. számokkal jelölöd a különböző jogosultsági szinteket.

UserID Role
Zoli 1
Pista 99
Admin 99

Ezek után a Form_Load()-ba ha ezt teszed:

Select Case DLookup("Role", "tblUsers", "UserID = '" & Environ("UserName") & "'")
Case 1
--alapfelhasználók beállításai
Case 99
--adminok beállításai, célszerűen csak nekik legyen a tblUsers-hez hozzáférése.
Case Else
--mindent letiltasz
End Select

Akkor elég csak a táblán keresztül megadni a felhasználónak a jogosultságot és már azonnal tudja is használni, nem kell a kódot minden egyes új felhasználó esetén módosítani, elég csak új csoportoknál javítani.

üdv.

A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

(#836) Mr.Csizmás válasza Mutt (#834) üzenetére


Mr.Csizmás
félisten

köszönöm! jövőhéten nekiállok farigcsálni.

"Szólítson csak Cirminek." | B&B XI | 3D nyomtatás Bp és környéke |

(#837) pista1235


pista1235
tag

sziasztok! egy egyszerű adatbázist kellene összehoznom, ami egy táblázatból áll. az accessre gondoltam, mivel nem szeretném bonyolítani. az lenne a kérdésem hogy az accessben ki lehet alakítani felhasználói felületet az adatbázishoz? annyiról lenne szó igazándiból hogy egy űrlapon felveszi az adatokat és azt beírja az adatbázisba. ezt meg lehet oldani az accesson belül? előre is köszönöm

(#838) Mr.Csizmás


Mr.Csizmás
félisten

üdv,

adott 12 db űrlap officeben (excel vagy word formában is okés), mindegyiken van 2-3 db "beikszelhető" rész. szeretnék olyat csinálni, hogy paraméterek kitöltésével a program beikszeli, illetve választással kijelölve, hogy melyik számúakat szeretném kinyomtatni a 12-ből, és akár egy all-in, vagy adott darabokat nyomtatva.

ezt mivel tudnám megvalósítani? excel? access?

"Szólítson csak Cirminek." | B&B XI | 3D nyomtatás Bp és környéke |

(#839) Kobe


Kobe
veterán

hello

van egy meglévő makróm, ami egy adott gombra van írva. A lényeg annyi, hogy gombnyomásra lefuttat egy lekérdezést, a kapott adatokat pedig kiexportálja egy excel fileba - és ez az excel file a folyamat végén nyitva is marad.

Ezt a folyamatot szeretném továbbvinni azzal, hogy a letöltött adatokból ugyanabban a fileban egy pivot táblát készít a rendszer.

Az érdekelne, hogy ha rögzítek egy makrót excelben, annak a kódját simán beilleszthetem a már meglévő accesses makrómba RunCode() ként, vagy kell valami egyéb "átkötő" duma is, ha igen, mi lenne ez, mit kellene még beillesztenem az exceles makró kódja elé, hogy azt automatikusan a megnyitott fileon végre is hajtsa ?

(#840) Kobe


Kobe
veterán

hello

lenne egy ujabb teoretikus jellegu kerdesem. Szeretnem fejleszteni az adatbazisom keresofunkciojat.
Perpillanat ugy nez ki, hogy van 1 db adattablam, eleg sok oszloppal (12-14 fajta adatot tarol 1 rekord). Ezeket egy formon keresztul tolti ki a felhasznalo. A rekordokat azonban updatelni kell idonkent, ez eddig ugy mukodott, hogy egy lekerdezes segitsegevel megadta a fo adat valamelyiket, es a talalatokat ugyanolyan urlapon jelenitette meg az access, mint amivel fel lett vive az adat eredetileg.

Sajnos a 2 fo adat azonban nem mindig ismert, kapott informacio alapjan kell keresni, es az lehet hogy nem a fo adat lesz. Ezert szeretnem kiterjeszteni a keresest, es az 5-6 legjellemzobb adat valamelyikere keresni.

Ugye 2 adatnal meg turheto volt hogy 2 felugro popup valamlyikebe beirja az adatot, 5-6 enterezgetes viszont mar eleg maceras. Gondoltam ezt mar meg lehetne oldani egy egyszerubb formmal, query by form technikaval.

A problemam az, hogy igy a kapott rekordokat adattabla formaban adja vissza a rendszer. Ezt nem szeretnem, foleg biztonsagi okokbol nem lenne jo ha a user a tablaban turkalna, a legjobb lenne ha egy ugyanolyan kinezetu formba irna vissza, mint az eredeti adatfelvivos form (mint ahogy a 2 kriteriumos parameter querym tette). Ennek nem tudtam rajonni a nyitjara, hogy lehetne megoldani, akarmit allitok, adattablat kapok vissza

Ezt a leirast kovette, persze atirva ahol kellett : http://support.microsoft.com/kb/304428

A masik problemam hogy mivel ez egy szimpla lekerdezes sok kriteriummal, nagyon konnyen gallyra mehet - parszor egymas utan lefuttatva altalaban belegabalyodik sajna, es hibat dob, vagy kiirja hogy Query is too complex :(

Gondoltam akkro probaljuk meg VBA koddal optimalizalni ez alapjan: http://allenbrowne.com/ser-62.html

Ez mar vizualisabb, profibb megoldas, egy gond van, a kilistazott talalatok itt sem szerkeszthetok, sajnos ugy nem is mukodne ez a fajta megoldas :(

Szerintetek ezt hogy lehetne a leghatekonyabban megoldani, ki mit hasznal ilyen celra ?

(#841) #40629504


#40629504
törölt tag

Sziasztok!

Access 2010-et használok. Egy olyan adatbázis szeretnék létrehozni, ami a megtartott vizsgákat tartja nyilván. Létrehoztam a táblát, ami az adatokat tartalmazza. Majd egy űrlapot, amivel az adatok kerülnének rögzítésre.
A gondom az lenne, hogy szeretném az űrlapot úgy létrehozni, hogy ha beírom az érdemjegyet számmal, akkor automatikusan töltse ki az "EREDMÉNY BETŰVEL" cellát, illetve ezek alapján döntse el, hogy megfelelt e vagy sem. A megfelelt rádiógomb helyett szeretném a szöveget látni: MEGFELELT, NEM FELELT MEG. Ezek az űrlapon inaktív mezőknek kellene, hogy legyenek.

Próbáltam az eredmény szöveggel cellába az érvényességi szabálynál egy egymásba ágyazott IIF függvény írni, de nem működik: IFF([Eredmény számmal]="5";"Jeles";IFF([Eredmény számmal]="4";"Jó";..."Nincs")))))

Mit rontottam el? Hogyan lehetne ezt megoldani?

Segítségeteket előre is köszönöm!

Megjelöltem, hogy mit szeretnék!

http://prohardver.hu/dl/upc/2013-04/19/306155_b9afxudq7papcndm_vizsga.jpg

(#842) Devil Gelo


Devil Gelo
tag

Sziasztok!

Lenne nekem egy szép kis paraméteres lekérdezésem, amit egy jelentés hív meg, ahol a megadni kívánt paraméter az egy státusz, pl.: (teljesített,tervezett,egyéb,teljesítés alatt). Namost az lenne a kérdés, hogy meg lehet-e oldani (acces 2007) hogy, ne nekem kelljen beírni a paramétert az előugró ablakba, hanem egy legörülö menü segítségével egy előre, táblában rögzített sorok közül jelenjen meg!? (Ilyen listát tudok csinálni például űrlapon, vagy bárhol máshol, de a paraméteres lekérdezésnél az istennek sem jövök rá, hogyan is lehet) :R

[ Szerkesztve ]

Samsung S23 Ultra

(#843) Snoop-y válasza #40629504 (#841) üzenetére


Snoop-y
veterán

A fuggvenyt masoltad? Mert ha igen akkor azert nem mukodik mert eliras van benne:

IFF([Eredmény számmal]="5";"Jeles";IFF([Eredmény számmal]="4";"Jó"

Itt egy pelda ra ha egy erteket szeretnel automatikusan egy cellaba irni masik cella erteke alapjan:

Alabbi peldaban a status mezo egy expression alapjan megnezi a Control description actions mezoben talalhato erteket majd beirja az Up-to Date vagy az Update is required ertekeket.

IIf([Control description actions]="No action required","Up-to Date","Update is required")

New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need

(#844) Snoop-y válasza Mutt (#824) üzenetére


Snoop-y
veterán

En probalom ezt a jogosultsag ellenorzest es adatbazis tiltast a manual alapjan megcsinalni de ha domainben vagyok hogyan kell megadnom a usernevemet?

Option Compare Database
Option Explicit
Global sLogon As String

Public Function StartUp()
Dim Designer As String
Dim Restart As Boolean
Dim stAppName As String

Designer = "yourlogonhere"
FIND_USER

Barhogy irom be az eredmeny mindig az hogy kizarom magam a test adatbazisbol :D

New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need

(#845) Snoop-y


Snoop-y
veterán

Na most mar csak ezzel vagyok bajban:

Private Sub Form_Open(Cancel As Integer)
If Dir(CurrentProject.Path & "\debug.txt") = "debug.txt" Then
Command1.Visible = True
Command0.Visible = True
End If
End Sub

Az istennek sem akar eltunni a gomb pedig nincsen debug.txt a db mellett.

Unlock es Lock gomb mar teszi a dolgat :K

[ Szerkesztve ]

New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need

(#846) Snoop-y válasza Snoop-y (#844) üzenetére


Snoop-y
veterán

Ok mukodik,

A kodban a usernevet felveszi automatikusan capitalra tehat a usernevet vegig nagybetuvel kell irni :)

New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need

(#847) #40629504 válasza Snoop-y (#843) üzenetére


#40629504
törölt tag

Próbálom, és majd jelzek!

Kösszi!

(#848) #40629504 válasza #40629504 (#847) üzenetére


#40629504
törölt tag

Sajna nálam nem működik :O

(#849) Snoop-y válasza #40629504 (#848) üzenetére


Snoop-y
veterán

Hmm hat formon nekem nem sikerult azt megoldani amit szeretnel.
Viszont ha csak azt szeretned, hogy legyen olyan mezod ( eredmeny betuvel ) automatikusan a tablaban es ne kelljen kezzel irogatnod azt meg tudom neked csinalni.

Udv: Snoopy

New level... Advertising has us chasing cars and clothes, working jobs we hate so we can buy shit we don’t need

(#850) zulu_mester


zulu_mester
tag

Sziasztok!

Lenne 2 feladatsor amit nem igazán tudok megoldani. A feladatsorok itt érhetőek el. Előre is köszönöm a segítséget.

"Te is fiam Bluethooth!"

Copyright © 2000-2024 PROHARDVER Informatikai Kft.