Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Excel & Visual Basic for Application

[es] :: Visual Basic 6 :: Excel & Visual Basic for Application

[ Pregleda: 5169 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

predajr

Član broj: 74160
Poruke: 9
*.ptt.yu.



Profil

icon Excel & Visual Basic for Application16.11.2005. u 23:05 - pre 191 meseci
Zna li neko ekvivalent Excel-ove f-je =SEARCH(Text1,Text2,broj) u VBA,
npr: hteo bih da uporedim spisak iz kolone C , sa nekom reci koja je uneta u TextBox1 a da ne koristim f-je vec samo VBA
 
Odgovor na temu

vujkev
Beograd

Član broj: 8072
Poruke: 1326
*.telekom.yu.



+103 Profil

icon Re: Excel & Visual Basic for Application17.11.2005. u 12:46 - pre 191 meseci
Možda je malo glupo, ali radi

Code:

Dim x as long 

for x = 1 to <koliko god redova imaš>
   if sheet1.cell(x, 3).text = text1.text then  'nisam siguran da li prvo ide red pa kolona ili obrnuto
     ' tekst je isti
   else
     ' text je različit
   end if 
next


Možda kod nije 100% ispravno napisan, ali predpostavljam da shvataš poentu
Naučio sam...
Da je važnije biti ljubazan nego biti u pravu
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Excel & Visual Basic for Application17.11.2005. u 17:24 - pre 191 meseci
Tako nešto, mada je možda bolje koristiti Range (ako ništa drugo mislim da će ići brže).Nešto ovako
Code:
Dim celija As Range
For Each celija In Workbooks(1).Worksheets(1).Range("C1:C100") 'umesto 100 stavi koliko redova imas
If celija.Value = Text1.Text Then
'postoji vrednost
Else
'ne postoji vrednost
Next celija
End If


[Ovu poruku je menjao Marko_L dana 17.11.2005. u 18:25 GMT+1]
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

quattor
Ljubisa Nikolic
Subotica

Član broj: 44020
Poruke: 130
*.subotica.net.



+10 Profil

icon Re: Excel & Visual Basic for Application17.11.2005. u 20:15 - pre 191 meseci
Uradi ovako: Ukljuci snimanje makroa i pokreni pretragu... Zatim iskljuci snimanje makroa i u VB editoru pogledaj sta ti je Excel isprogramirao. Zatim se sa tim poigraj i optimizuj.

Pozdrav.
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Excel & Visual Basic for Application17.11.2005. u 21:14 - pre 191 meseci
Može, samo što će onda dobiti rešenje sa Find funkcijom koja vraća error ako vrednost koja je zadata kao what parametar ne postoji ni u jednoj ćeliji, tako da bi morao da, umesto prostog If...Then...Else...End If, za pronađeni parametar koristi If, a ako nije pronađen da radi error hendling, što može doneti problem, ukoliko u istom makrou postoji neka druga greška.Po meni je to bespotrebno komplikovanje.Ukoliko vrednost koju traži sigurno postoji u nekoj ćeliji, onda to nije problem.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

quattor
Ljubisa Nikolic
Subotica

Član broj: 44020
Poruke: 130
*.subotica.net.



+10 Profil

icon Re: Excel & Visual Basic for Application18.11.2005. u 11:04 - pre 191 meseci
Error handling ce odraditi posao bez problema - ma sta jos radio u makrou. Jednostavno se treba poigrati sa time. Inace ove built-in f-je rade daleko brze od svega drugog, a sam sam ih koristio bezbroj puta... bez ikakvih problema (doduse u Wordu).

Pozdrav.
 
Odgovor na temu

predajr

Član broj: 74160
Poruke: 9
*.ptt.yu.



Profil

icon Re: Excel & Visual Basic for Application18.11.2005. u 22:51 - pre 191 meseci
U stvari hteo sam da od niza imena koji se nalazi u koloni C, izdvojim celije koji u svojim vrednostima sadrže deo reči koji sam , recimo, uneo u TextBox1 i smesti ga u ListBox1 (bez obzira na mala i velika slova) a i ujedno bi trebao sam , tog trenutka, da izbroji redove koje treba proveravati

npr. niz u koloni C se sastoji iz imena

1 Milana
2 Milovana
3 Ana
4 Steva
5 Mika
6 Stevana
7 Sladjana
8 Milica

uneta vrednost u TextBox1 je "ANA"
a izdvojeni niz u ListBox1 trebao bi biti

1 Milana

2 Milovana
3 Ana
6 Stevana
7 Sladjana


Pa sam to rešio na ovaj način, malo je komplikovano, ali radi.



Code:

Private Sub TextBox1_Change()
    Dim A As Integer, B As Integer, C As Integer, I As Integer, Y As Integer, Zniz1 As String, Zniz2 As String
    A = 1
    frmIme.ListBox1.Clear
        Zniz1 = frmIme.TextBox1.Value
            Do Until Sheets("1").Range("C" & A) = ""
                Zniz2 = Sheets("1").Range("C" & A)
                    B = Len(Zniz1)
                    C = Len(Zniz2) - B + 1
                        Y = 0
                        For I = 1 To C
                            If Mid(LCase(Zniz2), I, B) = LCase(Zniz1) And Y = 0 Then
                                Y = Y + 1
                                frmIme.ListBox1.AddItem A & "   " & Sheets("1").Range("C" & A) 'PRIKAZUJE REDNI BROJ ĆELIJE I IZDVOJENO IME
                            End If
                        Next I
                    A = A + 1
            Loop
End Sub


U svakom slučaju hvala na trudu.

[Shadowed: dodati [code] tagovi.]

[Ovu poruku je menjao Shadowed dana 19.11.2005. u 14:10 GMT+1]
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.238.EUnet.yu.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Excel & Visual Basic for Application19.11.2005. u 13:48 - pre 191 meseci
Pa što tako zaboga :) Evo, ovako ti je kraće.
Code:
Dim A As Integer, Zniz1 As String, Zniz2 As String
A = 1
frmime.ListBox1.Clear
Zniz1 = frmime.TextBox1.Value
Do Until Sheets("1").Cells(A, 3) = ""
Zniz2 = Sheets("1").Cells(A, 3)
If InStr(1, Zniz2, Zniz1, vbTextCompare) > 0 Then frmime.ListBox1.AddItem A & "   " & Sheets("1").Cells(A, 3)
A = A + 1
Loop

A moglo bi i još kraće ako bi izbacio string varijable, ali nema potrebe za tim.Ovako je pregledniji kod.

[Ovu poruku je menjao Marko_L dana 19.11.2005. u 14:52 GMT+1]
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

branimir.ts
Beograd

Član broj: 56661
Poruke: 127
195.252.103.*

Sajt: www.geocities.com/brankob..


Profil

icon Re: Excel & Visual Basic for Application20.11.2005. u 23:24 - pre 191 meseci
Citat:
Marko_L: Pa što tako zaboga :) Evo, ovako ti je kraće.
A = 1
frmime.ListBox1.Clear
Zniz1 = frmime.TextBox1.Value
Do Until Sheets("1").Cells(A, 3) = ""
Zniz2 = Sheets("1").Cells(A, 3)
If InStr(1, Zniz2, Zniz1, vbTextCompare) > 0 Then frmime.ListBox1.AddItem A & " " & Sheets("1").Cells(A, 3)
A = A + 1
Loop

Samo da dodam, nakon poslednje linije, ubaci A = 1 , za svaki slucaj.


Pozdrav
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Excel & Visual Basic for Application20.11.2005. u 23:34 - pre 191 meseci
Zašto kada ima u prvoj liniji A = 1 ? Uostalom A je lokalna varijabla tako da će svejedno čim se izvrši procedura A da bude nula, tako da mu A = 1 u poslednjoj liniji ne znači ama baš ništa.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

branimir.ts
Beograd

Član broj: 56661
Poruke: 127
195.252.103.*

Sajt: www.geocities.com/brankob..


Profil

icon Re: Excel & Visual Basic for Application21.11.2005. u 10:57 - pre 191 meseci
Citat:
Marko_L: Zašto kada ima u prvoj liniji A = 1 ?


Za svaki slucaj.

Pozdrav
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Excel & Visual Basic for Application21.11.2005. u 16:37 - pre 191 meseci
Slučaj čega ? Ozbiljno pitam.Ako nešto znaš, podeli to sa nama.Jel ti se dešavalo da dobiješ pogrešan rezultat ili...?
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

[es] :: Visual Basic 6 :: Excel & Visual Basic for Application

[ Pregleda: 5169 | Odgovora: 11 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.