..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

Vpis zadnjega podatka

Pomoč pri izdelavi makrov

Vpis zadnjega podatka

OdgovorNapisal/-a Nitros » Ne apr 26, 2009 4:45 pm

Zdravo

Rabu bi pomoč pri VBA kodi. Kako bi naisal, da mi ob določenem pogoju

PRIMER

For i = 7 To 152

If ws2.Range("F" & i) < 0 Then
...
poišči zadnjo vpisano vrstico in jo v celoti zbriši

Hvala za odgovor
Nitros
 
Prispevkov: 3
Pridružen: Ne apr 26, 2009 12:25 pm



Matjazev.NET
 

OdgovorNapisal/-a cedra » Ne apr 26, 2009 6:11 pm

Nekaj takega...
Koda: Izberi vse
'...
For i = 7 To 152
If ws2.Range("F" & i) < 0 Then
Range("F65536").End(xlUp).Select
Selection.EntireRow.Delete
end if
'...

Išče zadnjo polno ravno tako v koloni "F"
lp,

cedra
cedra
 
Prispevkov: 263
Pridružen: Po jul 25, 2005 11:11 pm
Kraj: Kamnik

hey

OdgovorNapisal/-a Nitros » Ne apr 26, 2009 10:07 pm

hvala za hiter odgovor.

Koda ki ste mi jo napisala, ko jo poženem v VBA deluje, ko pa ji zaženem v Excelu prek Command_button1 pa mi napiše, da nemore prebrati Range.

For i = 7 To 152

If ws2.Range("F" & i) < 0 Then
MsgBox "Zahtevana količina izdaje ni možna"
ws1.Range("B65536").End(xlUp).Select
Selection.EntireRow.Delete

End If
Next

Prilagam kodo.

Mislim, da mi javlja napako zaradi WS1. ws1 pa mam definian kot set ws1=thisworkbook.worksheet(3)

upam, da mi boste lahko razložili v čem je napaka.

hvala za odgovor.
Nitros
 
Prispevkov: 3
Pridružen: Ne apr 26, 2009 12:25 pm

dopolnitev

OdgovorNapisal/-a Nitros » Ne apr 26, 2009 10:55 pm

dopolnjujem opis moje napake.

izpiše mi Run-time error '1004'

Metoda Select razreda Range ni uspela

No to je to
Nitros
 
Prispevkov: 3
Pridružen: Ne apr 26, 2009 12:25 pm

OdgovorNapisal/-a cedra » Po apr 27, 2009 6:32 am

Šele zdaj je vidno, da delate z dvema različnima listoma :( To brez, da napišete ne morem vedeti...Včasih je boljše, da napišete malo več kot manj. Popravek kode:
Koda: Izberi vse
'...
Set ws2 = ThisWorkbook.Sheets(2)
Set ws1 = ThisWorkbook.Sheets(1)
'...
For i = 7 To 152
    If ws2.Range("F" & i) < 0 Then
    MsgBox "Zahtevana količina izdaje ni možna"
ws1.Select
    Range("B65536").End(xlUp).Select
    Selection.EntireRow.Delete
End If
Next i
'...

Zdaj pa bo verjetno šlo!
lp,

cedra
cedra
 
Prispevkov: 263
Pridružen: Po jul 25, 2005 11:11 pm
Kraj: Kamnik


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 1 gost

cron