Excel VBA
Imam jednu tablicu u Excel iz koje želim izvući podatke u drugi sheet.
Treba proći cijelu tablicu, naći određeni pojam (koji se ponavlja) i u odnosu na njegovu poziciju kopirati pet ćelija (offset nekoliko redova i kolona) u jedan red na novom sheetu. Pokušao sam naći na netu neko slično rješenje ali kad ga krenem modificirati sve pokvarim. 🤔 Znam osnove programiranja ali ne puno o VBA. Any idea? Poslano sa mog EVA-L09 koristeći Tapatalk |
Nije to teško iskukićati, najveća gnjavaža je složiti search / pronalaženje "naći određeni pojam",
nekakvom kontrolom potvrditi da je TO ono šta se traži a onda ide copy u drugi sheet, trebaš baš napisati rutinu, koristiti varijable, samim funkcijama u ćelijama je kompliciranije ... |
Priloži uzorak - ćemo pogledati
|
Pošaljem primjer kad dođem doma.
Znam da se to da lako srediti, samo treba znati. 😁 U principu jesam nešto napravio ali dobijem krive rezultate. 🤔 Poslano sa mog EVA-L09 koristeći Tapatalk |
1 privitaka
Citiraj:
|
1 privitaka
Evo - u prilogu.
Provjeri si da li je napravilo kako treba, ja nisam. Računa da su sva potrebna polja jednako udaljena od početka transakcije. |
Citiraj:
|
:goood:
|
Citiraj:
Code:
s2.Cells(r2, 5) = Val(Left(s1.Cells(r1 + 6, 2), Len(s1.Cells(r1 + 6, 2)) - 4)) ' iznos rate Zašto kroz formulu radi dobro a ovdje ne? |
Citiraj:
Koristi radije CDbl umjesto Val, jer uzima u obzir regionalne postavke. |
Citiraj:
|
Da ne dizem novu temu, molim pomoc u vezi Excel makroa.
https://i.ibb.co/5GrTYmx/Excel-VBA.jpg Macro treba na polje A1 (Ivan Ivic) ucitati sliku s hdd-a C:\slike\Ivan Ivic.jpg u comment (u novijem Excelu se zove Note) u velicini kao originalna slika, s dimenzijama commenta isto kao i slika. Nakon toga se spusta jedno polje nize (A2) gdje pise Pero Peric i ucitava sliku C:\slike\Pero Peric.jpg itd., sve dok ne dodje do polja na kojem ne pise nista (A7) i tu staje. Ukratko, zelim svakom polju u koloni A koje sadrzi ime i prezime dodati u comment pripadajucu sliku istog naziva iz mape C:\slike\, s tim da slika bude iste velicine kao original, a comment (Note) bude iste velicine kao slika. Imam ovaj kod, samo sto moram rucno dodati sliku, slika nije iste velicine/omjera i nije ostra kao original (vjerojatno zato sto nije ista velicina). Sub Pic() ' ' Pic Macro ' With Application.FileDialog(msoFileDialogFilePicker) .AllowMultiSelect = False 'Only one file .InitialFileName = CurDir 'directory to open the window .Filters.Clear 'Cancel the filter .Filters.Add Description:="Images", Extensions:="*.jpg", Position:=1 .Title = "Choose image" If .Show = -1 Then TheFile = .SelectedItems(1) Else TheFile = 0 End With 'No file selected If TheFile = 0 Then MsgBox ("No image selected") Exit Sub End If Selection.ClearComments Selection.AddComment Selection.Comment.Visible = True Selection.Comment.Shape.Fill.UserPicture TheFile Selection.Comment.Shape.Select True Selection.ShapeRange.ScaleWidth 1, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.ScaleHeight 1, msoFalse, msoScaleFromTopLeft Selection.ShapeRange.LockAspectRatio = True ActiveCell.Comment.Visible = True End Sub - Trebalo bi za svaku celiju sadrzaj kopirati u CLIPBOARD i onda ucitati sliku s lokacije C:\slike\CLIPBOARD.jpg u originalnoj velicini. Hvala unaprijed |
Evo, rijesio sam problem 90%. Jedino ne mogu dobiti da mi je slika u originalnoj velicini pa sam automatski podesio sve slike, odredio dimenzije u excelu koje mi odgovaraju i to je to. Ako netko moze pomoci da ipak dobijem slike originalne velicine bio bih zahvalan.
Evo kod: Sub PicFromCellNameColumnA() Dim rngList As Range Dim c As Range Dim cmt As Comment Dim strPic As String On Error Resume Next Range("A1").Select Set rngList = Range(Selection, Selection.End(xlDown)) strPic = "C:\slike\" For Each c In rngList With c.Offset(0, 0) Set cmt = c.Comment If cmt Is Nothing Then Set cmt = .AddComment End If With cmt .Text Text:="" .Shape.Fill.UserPicture strPic & c.Value & ".jpg" .Shape.Select True .Shape.width = 137 .Shape.height = 200 .Shape.LockAspectRatio = True .Visible = False End With End With Next c End Sub |
krivi post :/
|
Upadam ovdje s pitanjem da ne dizem novu temu:
Trebam pomoc oko oznacavanja checkboxeva na nekom sheetu. Vba kod koji imam mi oznaci sve checkboxeve na tom sheetu, a meni treba odredjeni broj ovisno o vrijednosti u jednoj celiji. Npr. U celiji B2 je vrijednost 15 i trebao bi mi oznaciti samo prvih 15 checkboxeva na tom sheetu, a ne sve. Ima netko ideju? Hvala |
pa obični counter napraviš i ideš po redu:
Sad je samo pitanje da li ideš A1, A2, A3.....B1,B2,B3 ili A1, B1, C1..... |
Citiraj:
|
Znaci, imam nekih 300 checkboxeva u excelu. Kod svake neke analize, moram poklikati drugi broj checkboxeva. Za pocetak sam napravila jedan checkbox koji ih oznaci sve da ne moram klikati 300 puta ako je za tu analizu potreban broj 300.
I to mi radi ako treba oznaciti sve. Medutim, dogodi se da sljedeci put moram kliknuti samo prvih 30, a ostalih 270 ne. Koliko ih moram kliknuti, govori mi vrijednost u celiji E16. Moj kod je bio : Sub SelectAll Click() Dim xCheckBox As CheckBox For Each xCheckBox In Application.ActiveSheet.CheckBoxes If xCheckBox.Name <> Application.ActiveSheet.CheckBoxes (“Check Box 471”.Name Then xCheckBox.Vakue= Application.ActiveSheet.CheckBoxes (Check Box 481”). Value End If Next End Sub Mislila sam da moram uglaviti funkciji for i=1 To Range (“E16”) Samo kako nisam strucnjak u tome… ne znam kako da uglavim da kad kliknem na celiju Select All, da ih oznaci samo onoliko kolika je vrijednost u celiji E16, npr 15. |
Citiraj:
Code:
Sub SelectSome Click() |
Citiraj:
Code:
Private Sub selectSome_Click() |
Super, hvala, radi mi ovaj gornji prvi kod gdje nisam navela kako se Checkboxevi zovu. HVala!
Sad jedino mi jos fali ako ih sve oznaci na tom jednom Checkboxu da ih drugim klikom i odznaci. Znaci,jednim checkboxom ih mogu oznaciti (to sad radi ovim kodom) i odznaciti. |
Citiraj:
Code:
Private Sub selectSome_Click() |
Hvala vam puno!
Radi |
:goood:
|
Sva vremena su GMT +2. Sada je 10:18. |
Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
© 1999-2023 PC Ekspert - Sva prava pridržana ISSN 1334-2940
Ad Management by RedTyger