Hirdetés

2014. szeptember 30., kedd

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Visual Basic

Hozzászólások

(#2451) Connie21


Connie21
(újonc)

Sziasztok!
Azt kéne megoldanom valahogy egy makróval excelben, hogy egy diagramon az adatfeliratok megjelenítését ki be tudjam kapcsolgatni egy gombbal. Nagyon kezdő vagyok még makrók terén, és nem tudom, hogy a diagram tulajdonságaira hogyan tudok hivatkozni, mert gondolom azoknál kéne megváltoztatni, hogy látsszon-e az adatfelirat. Sőt, még azt se tudom, hogy a diagramra hogyan hivatkozhatok, honnét tudom kideríteni a diagram nevét?
Tudnátok segíteni a megoldásban?

(#2452) martonx válasza Connie21 (#2451) üzenetére


martonx
(őstag)

A makrórögzítő fog tudni segíteni neked a megoldásban. Bekapcsolod a makrórögzítőt, majd ki és bekapcsolod az adatfeliratokat. Ezután már csak vissza kell nézned, hogy mit vettél fel.

HOPPÁ!

(#2453) Connie21 válasza martonx (#2452) üzenetére


Connie21
(újonc)

Basszus, tényleg! Köszönöm szépen, ez most rengeteget segített.:)

(#2454) új kérdező


új kérdező
(újonc)

Üdv mindenkinek!
Két kérésem, kérdésem lenne. Az első
fnev9k = fnev + "k"
fnev9j = fnev + "j"
fnev9i = fnev + "i"
fnev9h = fnev + "h"
fnev9g = fnev + "g"
fnev9f = fnev + "f"
fnev9e = fnev + "e"
fnev9d = fnev + "d"
fnev9c = fnev + "c"
fnev9b = fnev + "b"
fnev9a = fnev + "a"
If Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9k & ".dxf") <> "" Then
fnev = fnev9k
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9j & ".dxf") <> "" Then
fnev = fnev9j
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9i & ".dxf") <> "" Then
fnev = fnev9i
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9h & ".dxf") <> "" Then
fnev = fnev9h
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9g & ".dxf") <> "" Then
fnev = fnev9g
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9f & ".dxf") <> "" Then
fnev = fnev9f
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9e & ".dxf") <> "" Then
fnev = fnev9e
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9d & ".dxf") <> "" Then
fnev = fnev9d
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9c & ".dxf") <> "" Then
fnev = fnev9c
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9b & ".dxf") <> "" Then
fnev = fnev9b
ElseIf Dir("l:\sw2010rajz\dxf-k szöveghez\" & fnev9a & ".dxf") <> "" Then
fnev = fnev9a

Ezt a belinkelt részt, lehet e kevesebb sorral egyszerűbben megoldani, gondolok itt tömbre meg ciklusra például. A betűk indexeket jelölnek. Ez a programrész, arról szól, hogy van e az adott helyen indexes fájl és amilyent talál azzal folytatódik a feladat. Fontos a sorrend azaz, hogy előbb találja meg pl a b indexűt, mint az a indexűt és persze csak a b-s a jó. Azaz a legmagasabb indexűt keresse az legyen az eredmény.
Másik gond. Részben kapcsolódik az előzőhöz csak itt az alap amihez az indexet kapcsolni kell kötőjelet tartalmaz. Pl: 12345-1 Ebből kellene ezt csinálni: 12345a-1 Itt az első feltétel, azt eldönteni, hogy kötőjeles vagy nem a kiinduló név, ezután megtalálni a kötőjelet és elé beszúrni az indexet. Annyi, ha ez segít, hogy a kötőjel előtti számok(karakterek) 4-5 lehet, a kötőjel utáni a kötőjellel együtt 2-4 karakter lehet.
Ennyi. Előre is köszönöm a válaszokat.

(#2455) Baryka007


Baryka007
(senior tag)

Üdv!

WshShell.AppActivate "Calc" evvel a paranccsal lenne egy kis gondom.... A gond az hogy két Calc van nyitva és a kettőt kéne váltania... de mindig csak az elsőnek felnyitott calcot húzza elő a progi nem lehetne megkülönböztetni a két calcot hogy a program a kettő között tudjon váltani ?

És ne haragudjatok... de a Visual Basicről halvány lila fogalmam sincs... szóval ha nem fárasztalak titeket nagyon le... akkor szájbarágósan magyarázzátok kérlek :DDD

Üdv, Baryka :)

(#2456) mariann71


mariann71
(újonc)

Sziasztok!
A segítségeteket szeretném kérni. Hogyan tudok egy több ezer soros oszlopból transzponálni 5 sorosáva? példa:
1
2
3
4
5
6
7
8
9
10
Eredmény:
12345
678910
Nagyon köszönöm ha válaszoltok!

(#2457) martonx válasza mariann71 (#2456) üzenetére


martonx
(őstag)

For ciklussal?

HOPPÁ!

(#2458) mariann71 válasza martonx (#2457) üzenetére


mariann71
(újonc)

A makrót megírtam, de nem tudom hogyan adjam meg a ciklust. Segítenél?

Sub Makró1()
'
' Makró1 Makró
'
' Billentyűparancs: Ctrl+t
'

Range("A1:A5").Select
Selection.Copy
Range("B1").Select
Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=True

End Sub

Nagyon köszönöm!

(#2459) martonx válasza mariann71 (#2458) üzenetére


martonx
(őstag)

Tegyél fel légyszi valahova egy ilyen adatokkal teli excel file-t, aztán szívesen segítek. Érzésre itt egy pasetspecial meg a transpose = true nem lesz elég.

HOPPÁ!

(#2460) T_bee válasza mariann71 (#2456) üzenetére


T_bee
(fanatikus tag)

Szia,

Nézd meg ezt a kódot, szerintem azt csinálja, ami neked kell:

Sub transzponal()

Dim inp, res As Variant
Dim r As Range
Dim n As Integer

inp = Range(Cells(1, 1), Cells(22, 1)) 'itt olvassa be a program az induló adatokat

n = Int(UBound(inp) / 5) 'itt nézi meg, hogy hány sor lesz az új tömb
If UBound(inp) Mod 5 <> 0 Then n = n + 1

ReDim res(1 To n, 1 To 5)

For i = 1 To n
For j = 1 To 5
If (i - 1) * 5 + j > UBound(inp) Then Exit For
res(i, j) = inp((i - 1) * 5 + j, 1)
Next j
Next i

Set r = Range(Cells(1, 2), Cells(n, 6)) 'itt lehet megadni hogy hova outputolja az eredményt
r = res

End Sub

Üdv

T_bee

''Az erőszak a gyengék végső menedéke'' /Isaac Asimov : Alapítvány/

(#2461) mariann71 válasza martonx (#2459) üzenetére


mariann71
(újonc)

Nagyon köszönöm, de T-bee programja már megoldotta a problémát.
Köszi mégegyszer, nagyon jó, hogy ilyen sokan vagytok, akik önzetlenül segítenek.

(#2462) mariann71 válasza T_bee (#2460) üzenetére


mariann71
(újonc)

Köszönöm, ez szuper lett, pontosan erre volt szükségem. Mégegyszer nagyon köszönöm!!! Mariann71

(#2463) King Unique


King Unique
(PH! kedvence)
LOGOUT blog

Üdvözletem!

Excel VB programozásban (tudom van más topik, de én itt kérdezném) kéne megoldani az alábbi feladatot és nem igazán boldogulok vele:

• Legyen a párbeszédablakban egy méret feliratú legördülő lista, amelyben ki lehessen választani egy egész számot 2-10-ig! A legördülő lista tartalmát ciklussal töltsük fel, új adatot ne lehessen megadni benne, kezdőértéke legyen 5!

• Egy Gererál nyomógomb megnyomására generáljunk egy Méret*Méret méretű adatblokkot az első munkalapra, ahol a Méret a legördülő lista aktuális értékét jelöli. A blokk bal felső cellája sarokcella az A1-es cella legyen, az adatok legyenek véletlen egész számok és essenek bele a [0, 100] intervallumba! A munkalapon lévő előző adatblokkot töröljük!

• Egy megfelelően paraméterezett szubrutin határozza meg az adatblokk legnagyobb adatát és annak helyét (sor, oszlop)! Ha több ilyen adat is lenne, akkor az első ilyen (legkisebb sor, ill. index) adjuk eredményként!

• Egy Maximum feliratú nyomógomb megnyomására hívjuk meg az előző szubrutint és emeljük ki a megfelelő elemet (cellát) kék betűszínnel! Az összes többi elem legyen fekete betűszínű!

• Legyen a párbeszédablakban egy Összes feliratú jelölőnégyzet, ami a kezdetben legyen kikapcsolt állapotú! Bekapcsolt állapotban a Maximum nyomógomb a legnagyobb elemnek ne csak az első, de az összes előfordulását emelje ki!

:R

[ Szerkesztve ]

(#2464) Postas99


Postas99
(újonc)

Sziasztok!

Kicsit elakadtam egy projektben.
A program egyszerű lenne mint a faék, viszont a tippem az, hogy a többszöri utánolvasásra sem úgy működik amint kéne.

Adva van egy webbrowser box amiben egy adott oldalt nyitnék meg.

Majd a megnyitott WEB oldalon kellene az adott input boxokba adatokat préselni. a végén SUBMIT.
Viszont tudnom kéne, hogy a submit után az adott WEB oldal újratöltődött és küldhetem a következő csomagot.

Eddig ilyet találtam a vizsgálatra, de mivel az egész ciklust szeretném néhány ezerszer lefuttatni ezért ez járhatatlan út.

While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete
Application.DoEvents()
' MsgBox("busy")
End While 'Loop

Valakinek ötlete?
Akár megshare-elném a programot is, csak működjön szépen, azaz tegye a dolgát.

(#2465) sztanozs válasza Postas99 (#2464) üzenetére


sztanozs
(őstag)
LOGOUT blog

Ez csak akkor működik, ha nem ajax kéréssel megy fel a szerverre:
WebBrowser1.ReadyState <> WebBrowserReadyState.Complete

Ha ajax (és nincs page redirect - pl login miatt), akkor hasznosabb volna az xmlhttprequest-et használni.

Amúgy a fenti miért járhatatlan út?

For x = 1 To többezer
'... html input kitöltés
'... html submit
While WebBrowser1.ReadyState <> WebBrowserReadyState.Complete
Application.DoEvents()
End While 'Loop
Next

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2466) Postas99 válasza sztanozs (#2465) üzenetére


Postas99
(újonc)

Eddig pont igy írtam meg.
Csak tippelem, hogy nem működik megfelelően. Mert 1000 lefutást produkálva viszonylag hamar lefut (max 1 perc corei5 8giga ram gigabites háló)

(#2467) Postas99


Postas99
(újonc)

Ment privi.

(#2468) gerő ernő


gerő ernő
(lelkes újonc)

Üdv!
Valaki tud nekem segíteni.Kezdő vagyok VB.net programozásban.
Íme amit csináltam:
Module Module1

Sub Main()
Dim a As Integer
a = 0
For a 2 to 10
a = a + 2
Next
Console.WriteLine("A páros számok 1-től 10-ig=" & a)
End Sub

End Module

A program nem fut le. Szintaktikai hibát ír ki a For ciklusban. For a 2 to 10-itt a 2-őt húzza alá.

(#2469) sztanozs válasza gerő ernő (#2468) üzenetére


sztanozs
(őstag)
LOGOUT blog

Egyrészt ha kiavítanád, sem lenne jó (for a = 2 to 10), mivel 1. a kiiratás nem a ciklusban van, 2. ráadásul az értékadás után (for) változtatod a ciklusváltozó értékét.

Próbáld ki az alábbiakat és rájössz a különbségre:
1.
Sub Main()
Dim a As Integer
a = 0
For a = 2 to 10
a = a + 2
Next
Console.WriteLine("A páros számok 1-től 10-ig=" & a)
End Sub

2.
Sub Main()
Dim a As Integer
a = 0
For a = 2 to 10
a = a + 2
Console.WriteLine("A páros számok 1-től 10-ig=" & a)
Next
End Sub

3.
Sub Main()
Dim a As Integer
a = 0
For a = 2 to 10
Console.WriteLine("A páros számok 1-től 10-ig=" & a)
a = a + 2
Next
End Sub

4.
Sub Main()
Dim a As Integer
Console.WriteLine("A páros számok 1-től 10-ig:")
For a = 2 to 10 step 2
Console.WriteLine(a)
Next
End Sub

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2470) gerő ernő válasza sztanozs (#2469) üzenetére


gerő ernő
(lelkes újonc)

Köszönöm a segítséget és a kódokat. Most már lefut a program,de csak egy időre feltűnik a konzol majd utána el is tűnik.Tehát nem látom az eredményt.Valami olyan kellene mint a getchar a c-ben. VB-ben van ilyen?
A másik egy egyszerű animáció lenne de nem jó az eredmény.
A kód:
Imports System.Console
Module Module1

Sub Main()
Dim str As String = "Animáció!"
For i As Integer = 1 To 60
CursorLeft = i
Write("" + str)
Threading.Thread.Sleep(100)
Next
Console.ReadKey()
End Sub
End Module

Lefut csak ilyen eredménnyel.
A sok A betűt kellene valahogy eltüntetni.

(#2471) martonx válasza gerő ernő (#2470) üzenetére


martonx
(őstag)

Te magad is használod :) Console.ReadKey

HOPPÁ!

(#2472) vilag


vilag
(tag)

Üdv!

Egy ujabb érdekes esettel kerültem szembe.

Van egy gép amelyre korábban feltettem egy általam VB-ben írt programot, amely a kezdeti nehézségektől eltekintve tökéletesen futott.
A gépet elvitték, mert az xp támogatásának megszünése okán Win7-et tettek rá.

Azóta a programkód azt a furcsaságot csinálja, hogy egyes sorai egyszerűen "nem hajtódnak végre".
Ez annyit tesz, hogy elér a kód (léptetésben pl.) az adott sorhoz, rá is megy, tovább is lép a következő sorra, azonban a várt művelet nem hajtódik végre.

Ezen felbuzdulva a programot egy pendrivera tettem és bevittem a céghez (win 7), azonban azon a gépen tökéletesen működik.

Lépésben végigfuttattam a kódot és több olyan sor is van ami az említett módon nem hajtódik végre.
(pl.: Activesheet.ShowAllData)
Megnéztem a referenciákat, abban nincs eltérés.

Egyszerűen nem értem, hogy mi a fittyfene van.

Van valakinek ötlete????
Lehet, hogy az office telepítésnél kihagytak valamit???

(#2473) sztanozs válasza vilag (#2472) üzenetére


sztanozs
(őstag)
LOGOUT blog

szerintem van a kod elejen egy on error resume next
szedd ki és írd meg a hibauzenetet

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2474) vilag válasza sztanozs (#2473) üzenetére


vilag
(tag)

Van előtte On Error, de pont ez a lényege.

A kód:
On Error GoTo vege
ActiveSheet.ShowAllData
Range("a" + Trim(ActiveSheet.Range("a14").End(xlDown).Row)).Select
Exit Sub

vege:
If sorbeszur = True Then Exit Sub
uzenet = MsgBox("Már minden tétel látható!", 64, "Rendszerüzenet")

End Sub

A kérdés sokkal inkább az, hogy miért van az, hogy az egyik gépen működik, a másikon pedig nem???
Elvileg azonos futtatási környezet...

(#2475) vilag


vilag
(tag)

A szűrés dátumra történik, adódhat a probléma esetleg az excel meglehetősen furcsa dátumkezeléséből?

Megjegyzés: az itthoni gépemen is tökéletesen működik.

(#2476) sztanozs válasza vilag (#2475) üzenetére


sztanozs
(őstag)
LOGOUT blog

Regional Settings beállításban (US/UK/HU) vagy az Office telepíítő nyelvében (angol/magyar) van különbség a gépek között?

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2477) vilag válasza sztanozs (#2476) üzenetére


vilag
(tag)

Szerintem nincs, mert magyar nyelvű a Win7 és az Office 2007 is.

(#2478) vilag


vilag
(tag)

Okozhatja a problémát az, hogy telepítésnél nem állították be a "Közös Office eszközök" menüponthoz, hogy "Minden a saját gépről fut"?

Azt hiszem ebben a csoportban van a Visual Basic for Application is.

Elképzelhető, hogy nem ment fel a Visual Basic minden része???

(#2479) vilag


vilag
(tag)

Senkinek nincs ötlete????

(#2480) vilag


vilag
(tag)

Verziószám eltérés is található a két VB között (az enyém: Version 1053, a másik: 1020)

Valamint észrevettem, hogy a az Object Browser-ben rákeresek pl. a már említett "ShowAllData" kifejezésre, akkor mindkét gépen van találat, azonban ha a jobb klikk "help"-et akarom elérni akkor az egyik képen két olyan választás jelenik meg, ami a másikon nem.

Olyan mintha ez a funkció az egyik gépen elérhető lenne, míg a másikon nem.

Ha kiveszem előle az On Error-t, akkor az említett sornál az alábbi hibaüzenet jelenik meg:

"Worksheet osztály ShowAllData metódusa hibás"

Ötlet?

(#2481) vilag válasza vilag (#2480) üzenetére


vilag
(tag)

A probléma úgy tűnik megoldódott.

Feltettem az office service pack 3-at és azóta jónak tűnik.

Köszönöm a segítséget!

(#2482) Bobrooney


Bobrooney
(fanatikus tag)

Skacok hogy lehet elérni egy szűrő legördülő tartalmát vba kóddal?
Remélem van rá esély, illetve kevés kódolással azt vizsgálni h mik a különböző adatok egy oszlopban, ha nem muszály nem írok rá tömbös keresést.
Köszönöm előre is!

JR Klub, Miller Klub Törzstag

(#2483) martonx válasza Bobrooney (#2482) üzenetére


martonx
(őstag)

Több lehetőséget is látok, gondolom ezeket lenne érdemes megnézned makró rögzítővel:

1. Adatok fülön kiválasztod a Remove Duplicates (bocs, nincs magyar excelem) opciót.
2. Adatok fülön kiválasztod az Advanced filter-t. Ennél meg tudod adni, hogy csak a unique elemeket másolja / jelenítse meg. Bár nálam ez a mini példámban nem igen csinált semmit, de elvileg ennek is mennie kellene.

HOPPÁ!

(#2484) Bobrooney válasza martonx (#2483) üzenetére


Bobrooney
(fanatikus tag)

Köszi holnap meglesem :R

JR Klub, Miller Klub Törzstag

(#2485) Vasinger!


Vasinger!
(PH! nagyúr)
LOGOUT blog

Sziasztok!

Egy olyan VB scriptet kéne írnom Excelben ami a következőt csinálja:

Van Nagy Tábla, régi értékekkel és van sok kicsi frissekkel. A kicsikből kéne felölteni a nagy táblának az értékeit, a következőképpen:

A kis táblán végig kell iterálni sorban és az adott sornak egy megadott oszlopát kéne a másik táblázat megfelelő oszlopába átmásolni. (Nyilván a nagy táblában is meg kell keresni az adott bejegyzést és a megfelelőhöz kéne bemásolni az adott oszlopba)

Egy példán szemléltetve:

Kis tábla:

A B C
Ferrari|1997|5.0|
Porsche|1998|7.0|

Nagy tábla:

A B C
Audi |1993|4.0|
Ferrari|1997|2.0|
Porsche|1998|3.0|
Opel |1999|1.4|

Nagy tábla másolás után:

A B C
Audi |1993|4.0|
Ferrari|1997|5.0|
Porsche|1998|7.0|
Opel |1999|1.4|

Természetesen a táblákban nincs minden sorban és nem ugyanaz teljesen a felépítésük.

Tehát a kis táblában a kimásolandó adatra kéne először rákeresni a nagy táblában, majd utána a kis táblából egy cellát kimásolni és a korábban megkeresett helyre a nagy táblába bemásolni az értéket.

Próbálkoztam már vele, de valahol mindig elakadok, lehet teljesen rossz az elképzelésem is, elég lenne ha valaki csak vázlatosan leírná a megoldás menetét.

Ha valaki tudna segíteni ebben azt nagyon megköszönném, akár jöhet priviben is! :R

[ Szerkesztve ]

Apple iPhone 5c, iPad Air, Dell Latitude E6430, U2311H, U2312HM, Shure SRH-840, SoundMAGIC E30, Cube AMS 125

(#2486) Delila_1 válasza Vasinger! (#2485) üzenetére


Delila_1
(Szakértő)

Kicsit talán nehezen követhető :N

for valami=kistábla_első_oszlop_első_cella to kistábla_első_oszlop_utolsó_cella
on error goto beszúrás
sor=application.match(cells(valami,kistábla_első_oszlop), columns(nagytábla_első_oszlopa),0)
cells(soradik,nagytábla_második_oszlop)=cells(valami, kistábla_második_oszlop)
cells(soradik,nagytábla_harmadik_oszlop)=cells(valami, kistábla_harmadik_oszlop)
next
exit sub

beszúrás:
nagytábla_első_oszlop_első_üres_cellája=cells(valami, kistábla_első_oszlop)
nagytábla_második_oszlop_első_üres_cellája=cells(valami, kistábla_második_oszlop)
nagytábla_harmadik_oszlop_első_üres_cellája=cells(valami, kistábla_harmadik_oszlop)

Programozó: hibás programok megírására és kijavítására kiképzett szakember. http://www.elektroabc.hu/

(#2487) Vasinger! válasza Delila_1 (#2486) üzenetére


Vasinger!
(PH! nagyúr)
LOGOUT blog

Köszönöm szépen, még a mai nap kipróbálom, ha nem sikerülne írok még! :R

Apple iPhone 5c, iPad Air, Dell Latitude E6430, U2311H, U2312HM, Shure SRH-840, SoundMAGIC E30, Cube AMS 125

(#2488) kymco


kymco
(PH! kedvence)
LOGOUT blog

Sziasztok!
Az lenne a feladatom, hogy access-ben rá tudjak jelentkezni egy DC-re, majd onnan le tudjam szedni az AD usre-jeit.

Segítséget szeretnék kérni, hogy hogyan tudok access-ből VBA segítségével rácsatlakozni az adott DC-re a szükséges login és jelszó ismeretében.
Segítségeteket előre is köszönöm!

www.refujvaros.hu

(#2489) martonx válasza kymco (#2488) üzenetére


martonx
(őstag)

Mi az a DC?
Az AD-t szerencsére bármilyen nyelvből (értsd VBA-ból is), SQL szerűen le lehet kérdezni, régen mennyi ilyet csináltam, és hál istennek milyen régen volt már az. Gugli a barátod kismillió példát fogsz rá találni.

HOPPÁ!

(#2490) kymco válasza martonx (#2489) üzenetére


kymco
(PH! kedvence)
LOGOUT blog

DC - Domain Controller
A lekérdezés talán már menne is, de én egy tartományon kívüli gépről akarok lekérdezni, ahhoz pedig vsz jogosultságot kellene szereznem az access számára, hogy le tudjon kérdezni. Ehhez a csatlakozáshoz kellene egy kis segítség.

www.refujvaros.hu

(#2491) martonx válasza kymco (#2490) üzenetére


martonx
(őstag)

Én mindig csak tartományon belül használtam az AD lekérdezést. Ebben nem tudok segíteni :(

HOPPÁ!

(#2492) sztanozs válasza kymco (#2490) üzenetére


sztanozs
(őstag)
LOGOUT blog

Innen lessél: [link]

Amúgy, ahhoz, hogy az AD userjeit leszedd, azért tudni kell, mit is szeretnél - mert ugye az AD-be redgisztrált számítógépek, technikai userek, stb. is mind user. No meg egy nagyobb AD-ben több 10-100 ezer user is lehet különböző konténerekben, vagy akár AD forestben...

Ja és ráadásul, ha a 'null session' nincs engedélyezve az adott AD-ban, akkor érvényes felhasználóval is kell rendelkezz az adott tartományra.

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2493) kymco válasza sztanozs (#2492) üzenetére


kymco
(PH! kedvence)
LOGOUT blog

Köszönöm, megnézem...
Egyébként ou rendszergazdája vagyok az ou-mnak, van jogom az ou-mban. :) Nem ez lesz az akadály....

www.refujvaros.hu

(#2494) sztanozs válasza kymco (#2493) üzenetére


sztanozs
(őstag)
LOGOUT blog

Írkáltam korábban egy-két toolt c#-ban, de ha jól tudom az admin toolpack-ben vannak vbs alapú AD manipuláló, meg lekérdező eszközök is. Azokat is érdemes lenne megnézned.

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2495) kymco válasza sztanozs (#2494) üzenetére


kymco
(PH! kedvence)
LOGOUT blog

Köszönöm, azt is meglesem, amint időm lesz rá!

www.refujvaros.hu

(#2496) Onishi


Onishi
(lelkes újonc)

Sziasztok!

VBScript-el kapcsolatos kérdésem lenne. Leszögezem kezdő vagyok.
Azt kellene megoldanom, hogy egy bizonyos weblapról információt kinyerni és egy változóban eltárolni.
Konkréten napi időjárás adatokat kéne szereznem internetről, amit naplózás céljából el kell mentenem.

Ezt a google keresést kéne megnyitnom, az aktuális hőmérsékletre és a időjárás jellegére vonatkozó szövegre (Esős, Derült stb.) lenne szükségem: [link]

Nézegettem a forrásfájlját az oldalnak és ezt találtam:

Egyáltalán nem értek web programozáshoz, de az a "wob_tm" az egy változó? Vajon ez tartalmazza a hőmérsékletet?

Hogyan kéne erre írni egy scriptet?

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

(#2497) sztanozs válasza Onishi (#2496) üzenetére


sztanozs
(őstag)
LOGOUT blog

A bob_tm a html elem ID-ja. Az alapján meg lehet találni a document.getElementById függvénnyel. Inkább javascripttel próbálkozz (bár VBS-sel is megoldható persze).

[ Szerkesztve ]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2498) Onishi válasza sztanozs (#2497) üzenetére


Onishi
(lelkes újonc)

Sajnos csak VBS-t használhatok. Köszi a tippet, próbálkozom.

(#2499) cigam


cigam
(PH! nagyúr)
LOGOUT blog

Csináltam egy egszerü stoppert, de 5 perc alatt ~2mp-et késik.
Egyszerre indítom a telefon stopperével, és 5 perc múlva már 2mp-el kevesebbet mutat, mint a telefon.

Van valami pontosító trükk, vagy ez ilyen? (Esetleg a telefon stoppere csal ennyit?)

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2500) sztanozs válasza cigam (#2499) üzenetére


sztanozs
(őstag)
LOGOUT blog

Mivel/hogyan csináltad a stoppert?

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2501) Milgram1


Milgram1
(fanatikus tag)

Hali,
Középsuliban tanulok most MS Visual Basic-et és úgy gondolom hogy az ami órán van az kevés mert vettünk programozási tételeket, fájlkezelést valamennyire és kb ennyi. ezekkel több összetettebb feladtat. Engem érdekelne a dolog, ha ismerném rendesen akkor itthon alkotnék vele dolgokat csak nem tudom hol lehetne tanulni rendesen. Szóval az lenne a kérdésem hogy ismer-e valaki olyan oldalt/könyvet ahol tudok tanulgatni több dolgot hogy hasznavehető programokat írhassak magamnak.

http://steamcommunity.com/id/kekxx/;http://myanimelist.net/animelist/Milgram

(#2502) bucsupeti válasza Milgram1 (#2501) üzenetére


bucsupeti
(senior tag)

Ezek között érdemes lehet keresgélni...

Persze angolul tudni kell valamilyen szinten. Egyébként az angolt úgysem tudod megúszni, ha komolyan gondolod a programozást!

[ Szerkesztve ]

"Nem gond ha nem vágod a párologtatók bináris nyelvét..."

(#2503) cigam válasza sztanozs (#2500) üzenetére


cigam
(PH! nagyúr)
LOGOUT blog

Egy mezei timer-t húztam be és 1000-re tekerve másodpercenként számolom az idő múlását.

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2504) sztanozs válasza cigam (#2503) üzenetére


sztanozs
(őstag)
LOGOUT blog

De ugye a kódod lefutása is időbe kerül és a timer esemény lekezelése is időbe kerül. A 1000 ms pedig az előző kód lefutása után értendő. Egyszerűbb, ha 100 ms-ként csinálod és elmentett Time (Now) és aktuális Time (Now) közötti különbséget írod mindig ki.

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2505) cigam válasza sztanozs (#2504) üzenetére


cigam
(PH! nagyúr)
LOGOUT blog

Ha 100ms-onként fut le, az mennyivel jobb?
Úgy érted, hogy a start pillanatában elmentem az aktuális időt, és a timer evenben az aktuálisból kivonom?Van olyan változótípus, hogy "idő"?

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2506) sztanozs válasza cigam (#2505) üzenetére


sztanozs
(őstag)
LOGOUT blog

DateTime VB.NET-ben, vagy Date VB6-ban. Esetleg Long (timestamp) vagy Double (Excel).

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2507) cigam válasza sztanozs (#2506) üzenetére


cigam
(PH! nagyúr)
LOGOUT blog

VB2010-el bírkózok, és nagyon kezdő vagyok.
Szöveges változóba tároljam le, és csak vonjam ki belőle az aktuális időt?
stopperido=startido$-time(now)
Vagy nekem kell kisakkozni a perc, másodperc értékekből?

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2508) Milgram1 válasza bucsupeti (#2502) üzenetére


Milgram1
(fanatikus tag)

angollal megvagyok :D
:R

http://steamcommunity.com/id/kekxx/;http://myanimelist.net/animelist/Milgram

(#2509) sztanozs válasza cigam (#2507) üzenetére


sztanozs
(őstag)
LOGOUT blog

Nem, DateTime-ban tárold és a kivonás egy TimeSpan objektumot hoz létre. Ez már magában időtartamot reprezentál. MSDN-ről:
Dim startTime As Date = Now
' Run the process that is to be timed.
Dim runLength As Global.System.TimeSpan = Now.Subtract(startTime)
Dim millisecs As Integer = runLength.Milliseconds

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2510) cigam válasza sztanozs (#2509) üzenetére


cigam
(PH! nagyúr)
LOGOUT blog

Köszi!
Akkor ezzel azt is letudom mérni,hogy maga a program, ill. 1-1 szubrutin/funkció mennyi idő alatt fut le?

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2511) sztanozs válasza cigam (#2510) üzenetére


sztanozs
(őstag)
LOGOUT blog

Igen, de ez nem túl pontos.
Ezt célszerű használni inkább: Stopwatch (System.Diagnostic)
[link]

JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a saját véleményemet tükrözik, nem pedig a munkáltatómét...

(#2512) cigam válasza sztanozs (#2511) üzenetére


cigam
(PH! nagyúr)
LOGOUT blog

Köszi! Tanulmányozom...

Freeware, és akciós programok egy helyen https://www.facebook.com/pages/Freeware/225578290954074

(#2513) vilag


vilag
(tag)

Hali!

Nem tudja valaki, hogy Win7 és Office 2007 alatt az alábbi kódrészlettel mi lehet a baj?

Private Function GetActive(con As Control) As Control 'Aktív vezérlő meghatározása

If TypeName(con) = "UserForm" Then
Dim f As UserForm
Set f = con
Set GetActive = GetActive(f.ActiveControl)
ElseIf TypeName(con) = "MultiPage" Then
Dim mp As MultiPage
Set mp = con
Set GetActive = GetActive(mp.SelectedItem)
ElseIf TypeName(con) = "Page" Then
Dim pg As Page
Set pg = con
Set GetActive = GetActive(pg.ActiveControl)
ElseIf TypeName(con) = "Frame" Then
Dim fr As Frame
Set fr = con
Set GetActive = GetActive(fr.ActiveControl)
Else
Set GetActive = con
End If

End Function

XP alatt tökéletesen működik.
Win7 alatt a "Set pg = con sornál "Type mismatch" hibaüzenetet ad.

Van esetleg valakinek ötlete?
Olyan megoldás is érdekel ha valaki tudja hogyan lehet kinyerni, hogy éppen melyik vezérlőben vagyok, vagyis annak a nevét.

(#2514) vilag válasza vilag (#2513) üzenetére


vilag
(tag)

Üdv!

Meglett a megoldás.

Ebből:
Dim pg As Page

Ez lett:
Dim pg

Érdekes módon, így jól működik Office 2007 alatt is.

Útvonal

Fórumok  »  Szoftverfejlesztés  »  Visual Basic
Copyright © 2000-2014 PROHARDVER Informatikai Kft.