-
GAMEPOD.hu
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
krisztianAMG
senior tag
Sziasztok!
Tud az Excel komplex számokkal számolni?
-
Jumbo
tag
Sziasztok!
A következő jelenség ütötte fel a fejét eddig csak egy, mostmár több excel táblázatomban is:
pl. egy oszlopban lévő számokat pár sor után szummázza egy képlet, ha átírok egy számot, vagy üres mezőbe írok be egy számot, enter ütés után nem számolja át a szumma értéket, csak ha rámentek. Hasonló egy másik táblában: vízszintesen pár cella össze van szorozva, ha a képletet függőlegesen húzom lefelé, nem átszámítódnak az egyes sorok szorzatai, hanem a lemásolt cella értékeit látom, szintén csak mentés után frissülnek a képletek. Nem mindegyik táblázatban csinál így, van ahol frissül, .xls és .xlsx-nél is jelen van.Hol és mit kellene beállítanom?
Előre is köszönöm!
Üdv!
Jumbo
-
csferke
senior tag
A C oszlop adataiból van egy diagramom, havi lebontásban a következő tartományok.
=$C$2:$C$8
=$C$9:$C$15
=$C$16:$C$22Hogyan lehet automatikusan bővíteni a diagramot az új tartomány adataival amikor új évet adok hozzá? =$C$23:$C$29
=$C$30:$C$36.....köszi
[ Szerkesztve ]
-
Delila_1
Topikgazda
Nem jött össze a képfeltöltés.
Add meg a címed privátban, akkor elküldöm. A kép a PC Wordl 2006. márciusi számából Weisz Tamás cikkét tartalmazza. Ebben leírja a cellák méret szerinti beállítását két makróval, és UserFormmal.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
Automatikusra kell állítanod a számítást. 2007-ben Az Excel beállításai | Képletek | Számítási beállítások az útvonal.
2003-nál Eszközök | Beállítások | Számolás fül.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz csferke #20903 üzenetére
Jelöld ki az A2:C22 területet. Ctrl+r-re táblázattá alakítja a tartományt (vagy beszúrás, táblázat).
Az újonnan bevitt sorokat innen kezdve hozzáadja a diagramodhoz.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
dellfanboy
senior tag
fkerest, hogy kell úgy kiegészíteni, hogy szummázza a sorokat?
tehát van egy táblám ahol van ezer sor és kb 10 kategória
az tök egyértelmű hogy ha ezer kategóriám lenne akkor fkeressel hogy kellene megkeresni az értékeket de én
én egy olyan fkerest keresek ahol ezt a 10 kategóriát szummázva kidobna.
tudtok erre egy jó fv-t? vagy mivel egészítsem ki az fkerest?eladó dolgok:mondd az árát és vidd http://hardverapro.hu/tag/dellfanboy#aprohirdetesei
-
gyga
senior tag
üdv
van ez a kis kódom. ez megakadályozza a mentést és csak a mentést engedi.
1. tovább kellene fejleszteni hogy a másként mentett táblát már lehessen normálisan menteni.
'Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'If SaveAsUI = False Then
' Cancel = True
' MsgBox "You cannot save this workbook. Use Save As"
'End If
'End Sub
A kisebbség is számíít, teszkó.
-
#02644736
törölt tag
Sziasztok!
Az hogyan oldható meg, hogy van egy cellám, ami legördülő lista, és azt szeretném, hogy ne lehessen kitörölni, de azért a listából tudjanak választani.
-
lappy
őstag
válasz dellfanboy #20908 üzenetére
szia!
ez jó de nekem a tartományt valamiért nem veszi be =SZUMHA(A1:A3;FKERES(D5;A1:C3;1;0);B1:C3)Bámulatos hol tart már a tudomány!
-
dellfanboy
senior tag
köszi a szumha-s segítség sokat segített.
más tudtok abban segíteni, hogy kell létrehozni lenyíló nyilakat/opcionális választást?
az alábbit akarom a1cellában 5 értéket lehet kiválasztani (szöveg) ami mellé dedikáltan van x érték mögöttepl. ha pirosat választja ki akkor 5 az érték ha kéket akkor 22 stb.
mind konstans 5 választható érték van csak.előre is köszi
eladó dolgok:mondd az árát és vidd http://hardverapro.hu/tag/dellfanboy#aprohirdetesei
-
dellfanboy
senior tag
válasz dellfanboy #20912 üzenetére
megvan :
adatok-érvényesítés[ Szerkesztve ]
eladó dolgok:mondd az árát és vidd http://hardverapro.hu/tag/dellfanboy#aprohirdetesei
-
bandi0000
nagyúr
na Jó estét!
Lenne egy amatőr kérdésem itt vannak az érettségi feladatok, Excellel lett gondom, tehát a lényeg hogy ki kellene számolni a kedvezményt egy megadott lista alapján, viszont nem jövök rá hogy kell, a megoldásban megnéztem a képletet de nem tudom, hogy mit mivel csinált, szám szerint a 3. feladat
Xbox One: bandymnc
-
Delila_1
Topikgazda
A ThisWorkbook-ba tedd
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim v$
Cancel = True
v$ = InputBox("Adj nevet kiterjesztéssel a más néven történő mentéshez!")
ActiveWorkbook.SaveAs v$
ActiveWorkbook.Close
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Prosectura2
tag
Sziasztok!
Van egy oszlopban 365 adatom (igen, az év egy-egy napjához tartoznak)
Ezt szeretném hetenként összeadni/átlagolni, stb.Az elején van egy töredék hét - ugye az év nem pont hétfőn kezdődik - szum(B37)
Aztán jön az első hét - szum(B814)
Beírtam a harmadikat is, hogy meglegyen a trend - mindig a következő 7 cellában levő értékeket kellene igazából összeadni - szum(B1521)
Ha ezután lehúzom a sort, nem azt kapom, amit várok - szum(B2228);szum(B2935)...
Hanem ezt:
szum(B1016)
szum(B17-B23)
szum(B12-B18)
szum(B19-B25)Mit csinálok rosszul, illetve meg lehet-e egyáltalán így oldani?
Köszi
[ Szerkesztve ]
-
Prosectura2
tag
válasz Prosectura2 #20921 üzenetére
Hülye smiley-k hogy tűnnek el???
-
Delila_1
Topikgazda
válasz Prosectura2 #20921 üzenetére
Gondolom, a D oszlopba írtad az összegzéseket, a szum(C8:C14) a D14-es cellában van.
Jelöld ki a D8:D14 tartományt, és ezt húzd le. Így az üres cellákat is másolod, a képletek jó helyre kerülnek.Nem lesznek tapsikoló figurák, ha a Konvertálatlan opciót alkalmazod.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Prosectura2
tag
válasz Delila_1 #20923 üzenetére
Na még egyszer, hátha így olvasható lesz:
Sziasztok!
Van egy oszlopban 365 adatom (igen, az év egy-egy napjához tartoznak)
Ezt szeretném hetenként összeadni/átlagolni, stb.
Az elején van egy töredék hét - ugye az év nem pont hétfőn kezdődik - szum(C3:C7)
Aztán jön az első hét - szum(BC:C14)
Beírtam a harmadikat is, hogy meglegyen a trend - mindig a következő 7 cellában levő értékeket kellene igazából összeadnia - szum(C15:C21)
Ha ezután lehúzom a sort, nem azt kapom, amit várok - szum(C22:C28);szum(C29:C35)...
Hanem ezt:
szum(C10:C16)
szum(C17:C23)
szum(C12:C18)
szum(C19:C25)
Mit csinálok rosszul, illetve meg lehet-e egyáltalán így oldani?
KösziAz összegzést egy másik lapon készíteném el, ahol egymás alatt vannak az egyes hetekhez kapcsolódó értékek.
[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz Prosectura2 #20924 üzenetére
Ismétlés, képpel.
Beírod a két képletet (akár másik lapra, a megfelelő hivatkozással) a D7 és D14 cellába. Kijelölöd a sárga tartományt, és a D14 cella jobb alsó sarkában a kis fekete négyzetet lehúzod a többi adatod mellé. Jó képletet ad majd a D21, D28, stb. cellákba.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
bandi0000
nagyúr
az a lényeg, hogy vannak korkedvezmények, meg van minden embernek a kora, és van egy táblázat, azt tudom hogy felveszek egy segédtáblát, ott leírom a határokat hogy 0-100%;6-33%;26-0%;65-100% és a megoldásban erre valami hivatkozást csinálhatott, vagy valami, mert így néz ki a képlete: =FKERES(C27;kor_kedvezmény;2)
és ezt a bizonyos kor_kedvezményt nem tudom hova rakni
Xbox One: bandymnc
-
LordVader80
senior tag
Sziasztok!
Hogyan tudom azt megcsinálni, hogy az A oszlop cellájában engedélyezett adatot ha kiválasztok (lenyíló listából), akkor mellette a B oszlopban a "hozzá tartozó" adatot írja ki a program?
Az A oszlop adatait egy másik fül A oszlopa tartalmazza, mellette B oszlopban a hozzá tartozó adatok, tehát ide lehetne hivatkozni valahogy.
May The Force Be With You!
-
Delila_1
Topikgazda
válasz Prosectura2 #20926 üzenetére
A D14 cella képlete egy relatív hivatkozás. Azt tartalmazza, hogy a függvény adja össze a tőle 1 oszloppal balra lévő adatokat a 6 sorral fentebb kezdődő sortól a cellával azonos sorig.
Ha csak ezt a képletet másolod a D21-be, ott a 6 sorral fentebbi a 15. sor, a vele azonos a 21, C15:C21 lesz a képlet hivatkozása. Megtehetnéd, hogy mindig csak az összegző képletet másolnád a megfelelő sorokba, akkor is ezt az eredményt kapnád.
Egyszerűbb azonban az üres, képleteket nem tartalmazó cellákkal együtt másolni. Az egyszerűségen kívül biztosabb is a helyes eredmény. Az üres cellák biztosítják a megfelelő távolságot, nem kerül véletlenül feljebb, vagy lejjebb 1-1 képlet, ami ráadásul átfedést, hamis értékeket eredményezne az összegzéseknél.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz LordVader80 #20928 üzenetére
Az FKERES függvényt alkalmazd.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz LordVader80 #20931 üzenetére
Szívesen.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gyga
senior tag
válasz Delila_1 #20920 üzenetére
szia.
Valami nem kerek ezzel a kóddal.
1.
kétszer is megkérdezi a mentési nevet és ismeretlen helyre "ment?". Be kellene tenni ezt a pathot: \\szerver\valami\valami22.
annyit kellene még módosítani hogy a másként mentett állományban már ne legyen benne ez a kód.A kisebbség is számíít, teszkó.
-
alfa20
senior tag
sziasztok,
Olyan makrót tudok készíteni ami megkérdezi melyik oszlop(ok)ból szeretném törölni a nullákat és szépen kitörli?
A törlésre a makrót létrehoztam, de azt nem tudom, hogy esetleg lehetne egy felugró ablak ami megkérdi az oszlop nevét és azt teszi a megfelelő helyre
pl.:felugró üzen:
Adja meg az oszlopot: "textszöveg"makróban meg ezekbe a sokrokba be teszi a megadott oszlopot:
$oszlp = "textszöveg"
Columns("$oszlp:$oszlp").Select
ActiveSheet.Range("$oszlp" & "I1":$oszlp" & usor).AutoFilter Field:=1, Criteria1:="0"
Range("$oszlp" & "I3").Selectnem próbáltam de biztos nem ilyen egyszerű, meg ilyen felugró ablakokat nem sokat késztetem még.
esetleg a végén egy yes/no ablak, ami megkérdezni van e még oszlop, az igennel vissza menne a makró elejére a nem-re meg Sub End. de ez azt hiszem már nekem is menne
csere makróm:
Sub nulla_csere()
Dim usor As Long
usor = Range("A" & Rows.Count).End(xlUp).Row
Columns("I:I").Select
Selection.AutoFilter
ActiveSheet.Range("I1:I" & usor).AutoFilter Field:=1, Criteria1:="0"
Range("I3").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Selection.AutoFilter
Range("A1").Select
End Sub[ Szerkesztve ]
"Az agy olyan, mint az ejtőernyő: csak akkor működik, ha nyitott." (Thomas Dewar)
-
m.zmrzlina
senior tag
Powerpointban küzdök vonaldiagrammal de gondolom a beállítások Excelben sem nagyon mások.
Vízszintes tengelyen idő van ábrázolva (24 óra) 15 perces felbontásban. A függőleges tengelyen egytől x-ig egész számok. Minden grafikon két értéket vehet fel a nullát és a grafikon sorszámát. Tehát az első grafikon 0-1 értékekből áll a második 0-2 az x-edik 0-x-ből)
Kérdés: hogyan állítsam be a grafikont, hogy minden vonal csak a 0-tól eltérő értékeket ábrázolja, magyarul ott ahol az érték nulla ott ne látsszon a grafikon vonala.
Valami olyasmire lenne szükségem mint az árfolyamdiagram csak megfordított tengelyekkel, azaz vízszintes vonalakkal.
[ Szerkesztve ]
-
m.zmrzlina
senior tag
válasz m.zmrzlina #20935 üzenetére
A feladatot egyébként úgy tudnám leírni, hogy ábrázolni kell egyetlen ábrán hogy pl különböző lámpák mettől meddig vannak felkapcsolt és meddig lekapcsolt állapotban a nap folyamán.
Ha más ötlet van azt is szivesen fogadom.
[ Szerkesztve ]
-
Delila_1
Topikgazda
válasz m.zmrzlina #20936 üzenetére
Teljesen más ötlet.
Egy oszlopba bevinném az időpontokat, a címsorba pedig a dátumokat (nn formátummal, hogy kevés helyet foglaljanak). Lehet fordítva is az idő és dátum elhelyezése. A metszéspontokba 1-es értéket adnék, mikor égett a villany, és semmit, ha nem.
Egy feltételes formázással hátteret adnék az 1-et tartalmazó celláknak, azonos karakterszínnel. Diagram kilőve.A dátumok helyett lehetnek a munkahelyek, vagy amire szükséged van.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #20938 üzenetére
Igen.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz m.zmrzlina #20940 üzenetére
Sok szerencsét!
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
pampapamm
újonc
Sziasztok, egy kis segítséget szeretnék kérni. Adott egy összeg, amit sávokra szeretnék lebontani: az összeg 0-13, 13-26 és 26 feletti része, (ezeket külön oszlopokba rendezve) ez hogyan lenne ez megoldható excelben? Köszi szépen!
[ Szerkesztve ]
-
Mutt
aktív tag
válasz alfa20 #20934 üzenetére
Hello,
Olyan makrót tudok készíteni ami megkérdezi melyik oszlop(ok)ból szeretném törölni a nullákat és szépen kitörli?
Ezt tudod használni, csak a kijelölt cellában/oszlopban/sorban töröl:
Sub NullaTorles()
Dim rngTartomany As Range
Dim rngAdatok As Range
On Error GoTo NullaTorles_Error
'kérjük be a tartományt
Set rngTartomany = Application.InputBox("Honnan szeretnéd törőlni a nullákat?", "Választás", , , , , , 8)
'szűkítsük csak a használatban lévő részre
Set rngAdatok = Intersect(rngTartomany, ActiveSheet.UsedRange)
If Not rngAdatok Is Nothing Then
Application.ScreenUpdating = False
rngAdatok.Replace What:="0", Replacement:="", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False
Application.ScreenUpdating = True
End If
On Error GoTo 0
Exit Sub
NullaTorles_Error:
MsgBox "Kilépés"
End SubHa további nullákat akarsz keresni, akkor esetleg nézd meg így:
WorksheetFunction.CountIf(ActiveSheet.UsedRange, "=0")üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Mutt
aktív tag
Hello,
Nem aktuális már, de ezért még jól jöhet.
Sub CreateCsv()
Const sorok = 2000 'ennyi soronként szabdalunk
Const utvonal = "c:\Temp\" 'ide mentunk
Dim FileNum As Integer
Dim DestFile As String
Dim vLastRow As Long
Dim c As Long, i As Long, j As Long
Dim ki As String
Const sep = ";" 'a mezők ezzel lesznek elválasztva
Dim formatum As String
'megnézzük hány sorunk van
vLastRow = Range("A" & Rows.Count).End(xlUp).Row
'egy kis csinosítás a fájlban lévő sorszámra, pl. 1 helyett 01-et írunk majd
formatum = String(Len(WorksheetFunction.RoundUp(vLastRow / sorok, 0) & ""), "0")
'változó hogy tudjuk hanyadik fájlt írjuk
c = 1
'változó hogy tudjuk melyik sorban vagyunk
i = 1
Do
DestFile = utvonal & "test" & Format(c, formatum) & ".csv"
FileNum = FreeFile()
'megnyitjuk írásra a fájlt
Open DestFile For Output As #FileNum
Do While i <= sorok * c And i <= vLastRow
'betesszük egy változóba az aktuális sor celláit, a cellák közé a tagolójelet beszúrjuk
ki = ""
For j = 1 To Cells(i, Columns.Count).End(xlToLeft).Column
ki = ki & Cells(i, j) & sep
Next j
'fájlba tesszük a sor tartalmát tagolójellel
Print #FileNum, Left(ki, Len(ki) - Len(sep))
'következő sorra ugrunk
i = i + 1
Loop
'bezárjuk a fájlt
Close FileNum
i = sorok * c + 1
'új fájlra van szükség
c = c + 1
Loop While i <= vLastRow '
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
-
Mutt
aktív tag
Sziasztok,
Egy másik fórumon jelent meg egy olyan kérés, hogy meg kellene számolni egy oszlopban hogy egymás után hányszor szerepel pozitív illetve negatív szám, és a legtöbb előfordulást kellene megadni. Mindezt segédoszlopok nélkül. VBA megoldás született rá, de itt hadd mutassam be képlettel is.
Pozitív számra ez a képlet (Excel 2010 vagy felette):
=HA(DARABTELI(A:A;">0")=0;0;MAX(GYAKORISÁG(HA(A:A>0;SOR(A:A));HA(A:A<=0;SOR(A:A)))))Negatívra:
=HA(DARABTELI(A:A;"<0")=0;0;MAX(GYAKORISÁG(HA(A:A<0;SOR(A:A));HA(A:A>=0;SOR(A:A)))))Természetesen Ctrl+Shift+Enter-el kell bevinni.
A pozitív számokhoz egy példán keresztül megpróbálom elmagyarázni, hogy működik a képlet.
A képen A-oszlopban az adatok, a C-F oszlopokban pedig a lenti magyarázathoz részeredmények láthatók.
1. A képlet magja a GYAKORISÁG függvény, amely egy halmazból és egy keresési csoportból áll. A függvényről a súgóban lehet olvasni, példát látni. Ha az eredeti számokat adnánk meg, akkor csak azt tudnánk meg, hogy melyik szám hányszor fordul elő, ami most nem jó.
2. A megoldás, hogy a szám helyett a sor számát írjuk ki, annyival megspékelve hogy ha negatív a szám, akkor hibát iratunk (most a leghosszabb pozitív számsort keressük). Ennek a képlete HA(A:A>0;SOR(A:A)) és eredményét a C-oszlopban látjuk. Ez lesz a gyakoriság függvény első fele.
3. A második fele a gyakoriságnak pont az ellentétje a fentinek, tehát ha negtív szám van a cellában akkor a kell a sor száma. A képlet HA(A:A<=0;SOR(A:A)) és eredménye a D-oszlopban van.
4. Most jön a gyakoriság, amely a keresési csoportokat nézi (D-oszlop emlékeztetőül) és onnan csak a számokat veszi figyelembe (a HIÁNYZIK-ot kihagyja) és megszámolja hogy két csoport között az adathalmazban hányszor fordul elő szám.
A könnyebb érthetőség miatt az E-oszlopba beírtam a keresési csoportokat, amelyek számok a D-ből 2 eltéréssel: az első csoport (ami most az 1-et tartalmazza) az valójában kisebb és egyenlő 1 értelmezendő, a másik pedig hogy mindig eggyel több csoportot használ a függvény így a 13 után van még egy nagyobb mint 13 is.
A fentiek alapján a C-oszlopban lévő számokat számolgatja, ezt az F-oszlopban látjátok.
pl. a 6 melletti 4 azt jelenti, hogy 1 (az előző csoport) és 6 között 4 szám a C-oszlopban, vagy pl. 13-nál kettő nagyobb van.
5. Ezek az értékek pedig pont a pozitív számok előfordulását jelentik negatív számok között. Így már csak a maximum kell nekünk innen.
6. A végén a téves visszajelzés miatt - ami akkor lehet ha a listában egyetlen pozitív szám sincsen - van egy figyelés (DARABTELI(A:A;">0")=0) és egyből 0-t írunk.üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
#02644736
törölt tag
Sziasztok!
Userformról (UserForm1) szeretnék adatokat bevinni munkalapra, mondjuk munka1-re, ahol az első sorban fejléc van. Az adatoknál az első adat egy azonosító szám (Azon1) (A oszlopba kerülne), és van még egy másik azonosító is (Azon2) (K oszlopba kerülne), és ezeken kívül van még más adat is.
A próblémám az lenne, hogy abba a sorba kéne betennie, amennyi az Azon1 értéke, és előfordulhat, hogy kimarad egy, és azt utólag kell felvinni, tehát pl. volt már egy 345 értékű Azon1, de most újra fel kellene vigyem ugyanezt, és ezért az új felvételt kéne berakni a 345 értékhez, az utánna következő azonosítók értékét ezért meg kellene növelnie a programnak 1-gyel.
Azonban ezket az azonosítókat úgy szeretném már megjeleníteni az excel munkalapon, hogy pl. az Azon1 345/XY az Azon2 pedig Ma 345 /2014 jelenne meg. Azt tudom, hogy ezeket hogyan kell megcsinálni, csak azért írtam le, hogy így is lehetséges e az értékek növelése.Remélem érthetően írtam le a problémámat.
-
Delila_1
Topikgazda
válasz #02644736 #20949 üzenetére
Az A oszlop formátuma legyen Normál"/XY", a K-é pedig szöveg.
A makróban az A oszlopba írandó adatot számként mentem (TextBox1*1), a többit szövegként. A textbox, mint a neve is mutatja, szöveges értéket ad alapból. Ha számként akarod menteni valamelyik adatot, szoroznod kell a felíráskor 1-gyel.
10 db textboxba viszem be az adatokat a formon (A:J oszlop), a K oszlop adatát a TextBox1 értéke adja.
Private Sub CommandButton1_Click()
Dim sor As Long, usor As Long, kezd As Long, WF As WorksheetFunction, f As Boolean
Set WF = Application.WorksheetFunction
f = False
Sheets("Munka1").Activate
If WF.CountIf(Columns(1), TextBox1 * 1) > 0 Then
kezd = WF.Match(TextBox1 * 1, Columns(1), 0) + 1
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = kezd To usor
Cells(sor, "A") = Cells(sor, "A") + 1
Cells(sor, "K") = Cells(sor, "A") & "/" & Year(Date)
Next
f = True
Else
usor = Range("A" & Rows.Count).End(xlUp).Row + 1
End If
'Adatbevitel a Munka1 lapra
If f Then
usor = usor + 1
Range("A" & usor) = TextBox1 * 1 + 1
Else
Range("A" & usor) = TextBox1 * 1
End If
Range("B" & usor) = TextBox2
Range("C" & usor) = TextBox3
Range("D" & usor) = TextBox4
Range("E" & usor) = TextBox5
Range("F" & usor) = TextBox6
Range("G" & usor) = TextBox7
Range("H" & usor) = TextBox8
Range("I" & usor) = TextBox9
Range("J" & usor) = TextBox10
If f Then
Range("K" & usor) = TextBox1 + 1 & "/" & Year(Date)
Else
Range("K" & usor) = TextBox1 & "/" & Year(Date)
End If
'Rendezés
usor = Range("A" & Rows.Count).End(xlUp).Row
ActiveWorkbook.ActiveSheet.Sort.SortFields.Clear
ActiveWorkbook.ActiveSheet.Sort.SortFields.Add Key:=Range("A2:A" & usor), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Munka1").Sort
.SetRange Range("A1:K" & usor)
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End SubSzerk.: beteheted a végére a textboxok kiürítését.
[ Szerkesztve ]
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
Új hozzászólás Aktív témák
- World of Tanks - MMO
- Otthoni hálózat és internet megosztás
- Ukrajnai háború
- Stellar Blade
- AMD off topik: VGA, CPU, APU és minden, ami AMD
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Így építsd a billentyűzeted!
- Linux felhasználók OFF topikja
- Bemutatkozott a Moto G32 4G
- Luck Dragon: MárkaLánc
- További aktív témák...
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen