Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
Mobilarena
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
-
slashing
senior tag
a nagybetű függvény úgy működik hogy megadod a képletben melyik cellát akarod nagybetűsre alakítani, ennyi. Ha van egy kész táblázatod és minden kisbetűs cellát át akarsz alakítani nagyra akkor Macró kell hozzá, ez a Microsoft példája ráhttp://support2.microsoft.com/kb/291323
Miért nem lehet? Szerintem azért mert mindenki be tudja írni eleve naggyal is. Vagy ha mondjuk véletlen átalakítasz mindent nagyra de aztán mégis kicsi kell vissza alakítod de akkor meg minden mondat vagy minden első szó is kicsit lesz akkor meg az a baj hogy azt nem lehet megcsinálni és miért nincs arra is egy kapcsoló...
-
slashing
senior tag
válasz
Fferi50 #23608 üzenetére
Én ezt vagyis 2013 már a sorok függvényt használom a sorszámozáshoz ha olyan táblázat van amit mondjuk rendszerszeresen úgy kell bővíteni hogy sorbeszúrással.
=SOROK(A$2:A2) itt kezdődik mondjuk a sorszámozás lehúzom amíg kell aztán ha közben be kell szúrni egy új sort akkor az alatta lévők automatikusan egyel nagyobbat fognak kapni és csak a beszúrt sorra kell lehúzni a képletet, nem kell a teljes oszlopon A4-től indulva újra képletezni.
-
slashing
senior tag
válasz
Carasc0 #23565 üzenetére
Azért nem változik a "C" "D"-re ha elhúzod a képlet mert a C oszlop abszolút hivatkozva van tehát az mindig fixen C lesz a képletben, szedd ki előle a $-jelet és úgy húzd el a képletet és ha mindig a második sorból kell az adat akkor meg oda rakd a $-t.
A másoláson remélhetőleg a fogd és húzd módszert érted nem a ctrl+c/v-t
-
slashing
senior tag
válasz
Carasc0 #23562 üzenetére
Nem teljesen egyértelmű de valószínűsítem hogy a relatív és abszolút hivtakozás kell neked:
Pl. Abszolút oszlop és abszolút sor $A$1 mindig erre a cellára fog hivatkozni a képlet ha lehúzod
Pl. Relatív oszlop abszolút sor: A$1 mindig az adott oszlop 1. cellájára fog hivatkozni ha elhúzod a képletet
stb.. stb...F4 billentyűvel tudod váltogatni gyorsan hogy melyik legyen relatív vagy abszolút...
Ha csak egy cellahivatkozást akarsz módosítani ahogy lehúzod a képletet akkor azon kívül mindegyik cellát rakd abszolútra...
Ha nem érthető keress rá az excel súgóban szerintem az egyik legérthetőbb súgó amit Microsoft terméknél láttam....
-
slashing
senior tag
válasz
PindurAnna #23539 üzenetére
Hát biztos vagyok benne hogy ez nem excel-ben készült hanem word-ben tabulátorokkal.
Excelben egyéni cellaformátummal(cellaformázás/egyéni) lehet csinálni hasonlót a következők beírásával: @ *. ilyenkor pontozva lesz, alsó vonással nem lesz jó mert egyenes vonal lesz belőle...
-
slashing
senior tag
válasz
Delila_1 #23473 üzenetére
Nem használhatjuk a Selection.CurrentRegion.Select mivel körbe van bástyázva egyéb adatokkal a vizsgálandó terület :/
illetve mindenképpen külön kell vizsgálni a fejlécet mint az adatokat mivel ha a fejléccel együtt jelöljük ki az adatokat akkor előfordulhat az eset hogy jónak minősíti azt is ha több oszlopban van adat mint ahány fejléccel elátott oszlop van viszont azok nem foghíjasan vannakha meg külön vizsgálom viszont csak egy sorban vannak adataim akkor meg valamiért kijelöli lefele az összes üres sort is az ActiveCell.End(xlDown).Row így meg értelmét veszti a countA mivel tuti talál üres cellát a kijelölésben
ez az alap felépítés, a sárga területen jobbra nem nyúlhatnak túl az adatok lefele meg bármennyi lehet. Ez nem fix szélességű 20 különböző variáció van a fejlécekre
-
slashing
senior tag
Mit rontok el?
A következőt kéne ellenőrziznem:
D4-től egy sorban vannak a fejléc adatok(az adatok megnevezése) bármilyen szöveg/szám akármi lehet... alattuk az adatok. Azt akarom megvizsgálatatni hogy a fejléc hány oszlopos illetve az alattuk lévő adatok hány oszlopban vannak ha nem egyenlő akkor exit sub, illetve ha ugyan egyenlőek az oszlopok de pl. foghíjasan vannak az adatok akkor szintén exit... ez utóbbit úgy gondoltam hogy ha a kijelölt tartományban vannak üres cellák akkor az biztos hibás
Tehát a lényeg, ahány fejlécoszlop van annyi oszlopban kell legyen adat és azok nem lehetnek néhány helyen üresek, egyik oszlopban sem lehet több adat mint a többiben az adatok nem nyúlhatnak túl a fejlécoszlopokon
Sub hibaell()
Dim kijeloles As Range
Set kijeloles = Selection
Range("D4").Select
Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(4, ActiveCell.End(xlToRight).Column)).Select
hanyoszlop = Selection.Columns.Count
Range("D5").Select
Range(Cells(ActiveCell.Row, ActiveCell.Column), Cells(ActiveCell.End(xlDown).Row, ActiveCell.End(xlToRight).Column)).Select
hanyoszlop2 = Selection.Columns.Count
ures = Application.WorksheetFunction.CountBlank(kijeloles)
If hanyoszlop <> hanyoszlop2 Or ures > 0 Then
MsgBox ("Hibás")
Exit Sub
Else
MsgBox ("jó")
End If
End Sub -
slashing
senior tag
a \w{3,}\s\w{3,} lenne a legjobb pattern ha nem lenne ékezet a nyelvünkben de mivel van így szívás az egész úgyhogy abbahagyom, ma nem is akartam már semmit csinálni az excelben erre reggel óta szórakozok vele
-
slashing
senior tag
Nah találtam valamit a regexp-re
engedélyezni kell az editorban a Tool/References/ a Microsoft VBScript Regular Expressions 5.5-ötcsak a .Pattern részét írtam át ami úgy tűnik hogy hogy vezeték és keresztnév legyen szóközzel elválasztva JÓ bár a csak szóközre is jó még. Egy megfelelő patternel ez már kiküszöbölhető.
Sub nevellenorzes()
Dim Done As Boolean
Dim S As String
Dim RegEx As RegExp
Set RegEx = New RegExp
Do Until Done
S = Application.InputBox("Add meg a nevet:")
With RegEx
.Pattern = "([a-zA-Z]*)\s([a-zA-Z]*)"
Done = .Test(S)
End With
Loop
MsgBox S, vbOKOnly
End Sub -
slashing
senior tag
válasz
Mittu88 #23397 üzenetére
a legegyszerűbb ha úgy mondom mint amikor keresel valamilyen fájlt a számítógépen és azt írod hogy:
*kutya*.* így megkeresel minden olyan fájlt amiben a kutya szó szerepel bármilyen kiterjesztéssel, ez is kvázi egy regex kifejezés...
szóval ilyen kifejezéssek leírhatod hogy mit szeretnél kerestetni karaktereket számokat azoknak a hosszát stb...
Mindent az ég egy adta világon le lehet írni velük de mocskos bonyolult tud lenni, szerencsére nem sok közöm volt eddig hozzá.
-
slashing
senior tag
Huh vannak ám variációk én meg akkor mondok egy harmadikat.
Mi lenne ha reguláris kifejezéssel írnánk le hogy mi az amit elfogadhat?
Most fejből meg nem írom mi ennek a regexp kódja de mittudom én [a-zA-Z] szókóz [a-zA-Z] lenne
csak gőzöm sincs hogy kezeli a VBA a regexp kódot
amúgy a folyamatos frissítésre lenne lehetőségem csak ***** mód lusta vagyok és nincs kedvem hozzá
-
slashing
senior tag
Hát ilyen variációra nem is gondoltam de azthiszem belerakom úgy hogy minimum 5 karakter legyen a hossza és akkor már rövidíteni sem tudja a nevét. Persze a 6 szóközt így is elengedi de mennyi erre az esély hogy kipróbálja?
-
slashing
senior tag
válasz
m.zmrzlina #23387 üzenetére
Hát én is kb. erre jutottam: miután lefutott a kódom nem térek vissza arra a lapra ahonnan másolni akarok hanem előbb a törlendő lapra ugrok és törlök majd visszaugrok a másolandó adatokat tartalmazó lapra ott másolok és újra visszaugrok arra a lapra hol előtte kitöröltem.
szóval csináltam egy oda vissza oda bakugrást
-
slashing
senior tag
Jah meg még egy kérdés ki lehet azt játszani valahogy ha valamit vágólapra másoltatok de ezután lefut egy selection.clearcontents de dobja el a vágólap tartalmát?
(#23380) Mittu88 köszi mindjárt ki is próbálom
-
slashing
senior tag
Most már csak a user errorokat próbálom kiküszöbölni. Érdekelne hogy mi a legegyszerűbb megoldás arra hogy a Név és WO kérésre ha valamiért Mégsét nyom vagy nem ír be semmi és úgy okézza le akkor ne lépjen tovább a program hanem mindenképpen be kelljen írni valamit?
A dátumot megoldottam egy neten talált példa alapján de kicsit hosszasnak érzem a kódot nem szeretném mindegyikre így végigvezetni.Ötletek?
Így indul a kód:
Dim lastRow As Long, asn As String, DatumString As String, datum As Date
Dim valid As Boolean: valid = True
asn = ActiveSheet.Name
'adatok bekérése
nev = InputBox("A mérést végző személy Teljes neve:")
wo = InputBox("A méréshez tartozó WO szám Bxxxxxx/xx:")
Do
DatumString = Application.InputBox("A mérés dátuma ÉÉÉÉ/HH/NN: ")
If IsDate(DatumString) Then
datum = DateValue(DatumString)
valid = True
Else
MsgBox "Érvénytelen dátum"
valid = False
End If
Loop Until valid = True -
slashing
senior tag
válasz
m.zmrzlina #23366 üzenetére
Köszi és neked is Delila_1 mindkét verzió nagyon jó és hasznos volt, pont úgy megy ahogy akartam
-
slashing
senior tag
Baromi jók vagytok
a bőség zavara
Köszönöm. és mindegyikből tanultam valami újat, látszik ahány ember annyi kód ugyan arra. Egy valami hibázik csak, hogy az utolsó értéket tartalmazó oszlop után is ki kell még iratni az első input szöveget.
-
slashing
senior tag
válasz
slashing #23360 üzenetére
Hát eddig jutottam:
Sub Makró5()
Dim c As Long, myvalue As Variant, lastrow As Long
Range("D5").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Munka1").Select
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
c = Range("XFD1").End(xlToLeft).Column
For c = c To 2 Step -1
Cells(1, c).EntireColumn.Insert
Next c
myvalue = InputBox("add meg a szöveget")
Range("B1").Value = myvalue
lastrow = Worksheets("munka1").Range("A1").End(xlDown).Row
With Worksheets("munka1").Range("B1")
.AutoFill Destination:=Range("B1:B" & lastrow&)
End With
Columns("A:B").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A1").Select
myvalue = InputBox("add meg a dátumot")
Range("A1").Value = myvalue
Range("B1").Select
myvalue = InputBox("add meg a szöveget")
Range("B1").Value = myvalue
End Subközel sem tökéletes pl. a dátum helyére bármit beírhatnék de ez legyen a legkevesebb. Annyi kéne még hogy az első szöveg bekérés után kitölti az oszlopot a megadott szöveggel de ezt tovább kéne vinni az utolsó oszlopig is.
(#23362) Delila_1
Máris nézem köszönöm
-
slashing
senior tag
Kellene nekem is egy kis macrós segítség csak részben tudom összeollózni a neten találtakból
magamtól meg nem igen megy
A követekző lenne a feladat:
- Az aktív munkalapon jelölje ki a D5 cellától kezdődően jobbra és lefele addig a cellákat amíg adatok vannak benne.
- Másolja új lapra rátok bízom hogy ez egy már meglévő munkalap vagy mindig újat csinál.
- Az új lapon miután beillesztette az adatokat minden második oszlop elé szúrjon be egy új oszlopot majd egy input mező jöjjön fel és amit beleír az ember azzal töltse fel az új oszlopokat addig amíg adatok vannak, 99,9% hogy mindig minden oszlop ugyan annyi sorban fog adatot tartalmazni mint amennyi az első oszlopban van.
- Ha ez megvan szúrjon be még két üres sort az A oszlop elé, még két input kérelem az első egy dátumkérés a második egy szöveges kérés, itt már elég csak az új A1-be a dátumo és B1-be a szöveget...
- Jelölje ki ezt az egész tartomány és másolja a vágólapra. -
slashing
senior tag
találtam a neten egy ilyet...
Sub test()
Dim e, s
With CreateObject("System.Collections.ArrayList")
For Each e In Range("a2", Range("a" & Rows.Count).End(xlUp)).Value
If Not IsEmpty(e) Then
For Each s In Split(e, ";")
.Add s
Next
End If
Next
.Sort
Range("b2").Resize(.Count).Value = _
Application.Transpose(.ToArray)
End With
End Suba pontos vesszőt írd át vesszőre a .Sort sort meg töröld hogy ne rendezze....
-
slashing
senior tag
válasz
Mittu88 #23345 üzenetére
erről én is tudnék mesélni, mikor megnyitja a munkafüzetet előjön automatikusan egy msgbox kiírja hogy mit nem szabad, a cellán érvényesítés van és kiírja hogy mit nem szabad más színnel van jelölve és még akkor is az ellenkezőjét csinálja mikor meg letiltom akár még a rákattintást is akkor meg reklamál hogy de miéééért, mert hülye vagy azért és nem fogja fel....
az abszolút hozzá nem értőnél már csak az rosszabb aki azt hiszi hogy ért hozzá, mert majd ők megoldják de még egy ha függvényt sem tud megcsinálni
minden szerénység nélkül mondom hogy nálunk 5 asszisztens munkáját fél év alatt automatizálni tudnám és még csak makró sem kéne hozzá, pedig én se vagyok egy nagy mágus de félelmetes a hozzá nem értés. A színezésen kívül talán még a szum függvény amit értenek...
-
slashing
senior tag
válasz
slashing #23340 üzenetére
jah azt elfelejtettem megkérdezni hogy mit értesz az alatt hogy "egy képlettel" mert egyel sehogy sem mert 3 abszolút eltérő képletről beszélünk... mindegyiknek külön oszlop kell
nálam így volt:
e2,3,4 a csoportok
f1 a létszám g1 a módusz h1 a medián és ezek alatt voltak a képletek...ha a fentiek megvannak akkor ki lehet iratni egy képlettel mindet így:
="a csoport létszáma="&F2&" módusza="&G2& " mediánja="&H2
-
slashing
senior tag
válasz
sutyimatyi #23327 üzenetére
Nincs mit...
-
slashing
senior tag
válasz
sutyimatyi #23324 üzenetére
=ABS(SZUMHA(A3:A50;"<0"))
-
slashing
senior tag
válasz
sutyimatyi #23322 üzenetére
nem próbáltam ki de elvileg működnie kell:
=SZUMHA(A3:A50;"<0";A3:A50)
sőt ha jól tudom az utolsó(második) A3:A50 csak opcionális szóval elhagyható...
-
slashing
senior tag
A kepleteknel is mukodik a keres es csere funkcio, nem muszaj vegigzongorazni egyesevel vagy macroval...
-
slashing
senior tag
jaja olyan mint régen a böngészők annyi böngészőt kellett nyitni amennyi oldalt néztünk most csak egyet és azon belül vannak a fülek, csak az excelben nincsenek fülek. Látszólag többször van megnyitva az excel de valójában csak egyszer... átfutottam a beállításokat de nem találtam rá utaló dolgot de nem lepődnék meg ha lenne rá valami registry hack vagy hasonló de azon sem ha nem lenne
-
slashing
senior tag
válasz
Des1gnR #23292 üzenetére
két fájl egymás mellett külön ablakban az egyikben számok pl. A1:A10 mondjuk csupa 1-es ezt kijelölöd akkor a státuszsorban kiírja ezeknek az átlagát az összegét és hogy hány cella van kijelölve de csak addig míg át nem kattintasz a másik fájlra vagy munkafüzetre mert akkor már az lesz aktív és nem mutatja az előbbi adatokat lent...
-
slashing
senior tag
Hátha jól jön másvalakinek is....
Szükségem volt egy olyan feltételes formázásra ami cella érték alapján kiemel bizonyos sorokat. Mivel volt vagy 30 féle cellatulajdonság így egy elég hosszú vagy függvény lett volna(vagy 30x cellaérték ="valami") a feltételes formázása ezért ki kellett valamit találni erre. Így lett a feltételes formázás képlete a következő:
=HOL.VAN($B1;lista;0)
a listát meg meg lehet csinálni eltolással vagy offsettel dinamikusan bővülőre.
-
-
-
slashing
senior tag
válasz
Titkárnő #23163 üzenetére
csak makróval fog működni és nem lesz automatikusan, a szerkesztőlécen le kell okézni mindig a képletet hogy frissüljön...
ezt találtam a neten:
Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)
Dim rCell As Range
Dim lCol As Long
Dim vResult
''''''''''''''''''''''''''''''''''''''
'Written by Ozgrid Business Applications
'www.ozgrid.com
'Sums or counts cells based on a specified fill color.
'''''''''''''''''''''''''''''''''''''''
lCol = rColor.Interior.ColorIndex
If SUM = True Then
For Each rCell In rRange
If rCell.Font.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
End If
Next rCell
Else
For Each rCell In rRange
If rCell.Font.ColorIndex = lCol Then
vResult = 1 + vResult
End If
Next rCell
End If
ColorFunction = vResult
End Functionén csak annyit írtam át rajta hogy ne háttérszínt nézze hanem a betűszínt.
használni úgy kell hogy: =ColorFunction(C1;A1:A9;IGAZ)
ahol c1 cella háttérszíne olyan mint az összeadandó számoké tehát piros, A1:A9 a tartomány amit figyeltetünk. A végén ha igaz akkor összeadja ha hamis akkor csak megszámolja hány cella piros...szerintem egyszerűbb egy új oszlop amibe beírod hogy fizetve aztán egy =SZUMHATÖBB(A1:A9;B1:B9;"fizetve") ahol a1:a9 az összegek b1:b9 a fizetve és a fizetve szövegűeket összeadja...
-
-
slashing
senior tag
talán képlettel is menne, eddig jutottam:
=DARABHATÖBB($B$2:$B$8;"="&$H2;$C$2:$C$8;"="&$I2;$D$2:$D$8;"="&$J2)
ha a tartomány ahol keresni kell csak 3 cellás akkor már jól működik. Kicsit tovább kéne gondolni, de nincs erőm hozzá és a macro is kész úgyhogy passzolom a dolgot.
-
slashing
senior tag
-
slashing
senior tag
válasz
slashing #23089 üzenetére
jah meg most jut eszembe hogy ezt már használtam makróban is ott meg így néz ki
Range("D11").Select
ActiveCell.FormulaR1C1 = _
"=MID(CELL(""filename"",R[-1]C),SEARCH(""["",CELL(""filename"",R[-1]C))+1,SEARCH(""]"",CELL(""filename"",R[-1]C))-SEARCH(""["",CELL(""filename"",R[-1]C))-1)" -
-
slashing
senior tag
szerintem felesleges belerakni az italik true-t mivel az megmarad ha eltávolítod a félkövérséget
-
slashing
senior tag
Táblázattá formázott táblázatnál ha a lapvédelem aktív és van zárolt cella a táblázatban akkor nem fog dinamikusan bővülni a táblázat. A következő kóddal el ez kiküszöbölhető:
Munkalaphoz rendelt makró.
Hátha valakinek kelleni fog még:Private Sub Worksheet_SelectionChange(ByVal Target As range)
If IsNull(Target.Locked) Then
Munka1.Protect , True, True, True, True
ElseIf Target.Locked Then
Munka1.Protect , True, True, True, True
Else
Munka1.Unprotect
End If
End Sub -
slashing
senior tag
válasz
Fferi50 #23040 üzenetére
Egyébként találtam egy bugot ami miatt rengeteget szívtam és lehet 10-ed ennyi időbe telik megcsinálni ezt az egészet.
Lapelrendezés nézetben nem a cellába rakja az okjektumot hanem mellé míg normál nézetben vagy oldaltörések megjelenítése nézetben a cellába rakja én meg persze Lapelrendezés nézetet használtam
-
slashing
senior tag
válasz
Fferi50 #23033 üzenetére
Működik a meghívás
de az objektum elveszti a kijelölést a beillesztés után így nem fut le a második makró.
ha berakok egy ilyet: Range("target").Select
akkor kijelölide akkor meg hibát ír erre a sorra,pedig kijelöli :/run-time error 1004
method 'range' of object' worksheet failed..szerk.: mégsem jelöli ki
szerk2: az az érdekes ha menüsorról szúrok be akkor az objektum lesz az aktív de mivel én cella duplakattintással indítom a folyamatot így az a cella lesz az aktív miután berakta az objektumot így nincs min lefusson a méretezés...
-
slashing
senior tag
Lehet munkafüzethez rendelt makróban makrót meghívni?
nevezetesen van egy ilyen makróm a füzeten:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("H7,H12,H17,H22,H27,H32,H37,H42,H47,H52,N7,N12,N17,N22,N27,N32,N37,N42,N47,N52,T7,T12,T17,T22,T27,T32,T37,T42,T47,T52,Z7,Z12,Z17,Z22,Z27,Z32,Z37,Z42,Z47,Z52,AF7,AF17,AF22,AF27,AF32,AF37,AF42,AF47,AF52")) Is Nothing Then
Application.Dialogs(xlDialogInsertObject).Show
End If
End SubAmi a cellákon duplakattintásra előhívja az objektum berakást ahol én fájlból berakom ikonként.
Majd van egy ilyen makró
Sub alakzatMeretezes()
Dim shp As ShapeRange
Set shp = Selection.ShapeRange
shp.Width = 42
shp.Height = 42
End SubAmi a kijelölt alakzatot a megadott méretre alakítja nekem. Az lenne a legkényelmesebb ha lefutna ez a makró is miután bekerült a fájl a füzetbe.
ezt össze lehet párosítani?
-
slashing
senior tag
-
slashing
senior tag
sziasztok
ismét kellene egy kis macro segítsége, arra lenne szükségem hogy pl. ha A5:A1000 tarmományban belekattintok akkor írjon ki egy üzenetet és mikor leokézom az üzenetet akkor a szomszédos cella legyen az aktív cella pl. kattintok A5-re megjelenik a szöveg pl. Hello World leokézom és átugrik B5-re.
-
slashing
senior tag
válasz
d@minator #22965 üzenetére
én így szoktam összefűz függvény ebből a legalsót szoktam alkalmazni...
=U3& " = "&U4
-
slashing
senior tag
válasz
Delila_1 #22813 üzenetére
nem ad hibát legalábbis akármivel teszteltem eddig nem adott azért kell bele a darab2 oda mert nem mindig van feltöltve végig a teljes tartomány van mikor csak néhány cellában van adat így megszámolja hány olyan cella van ami megfelel a minimum felettinek is és a maxium alattinak is és ezek egyenlőek-e annyival mint amennyi cellában adat van ha egyenlőek akkor Pipa ha nem akkor X...
-
slashing
senior tag
válasz
Delila_1 #22811 üzenetére
hehe pont a héten csináltam egy hol.van alapján eltolás függvénnyel dolgozó táblázatot pont egy diagramm miatt ami mellesleg egy indirekt függvény váltott le
Nem semmi ezeket egybeágyazni a névkezelőben
én most ennek a képletnek örülök mint majom a .... pedig így visszagondolva tök egyszerű de mire kigondoltam hogy miként lehetne
=HA(DARAB2(O19:AH19)=0;"";HA(ÉS(DARABTELI(O19:AH19;"<="&N19)=DARAB2(O19:AH19);DARABTELI(O19:AH19;">="&M19)=DARAB2(O19:AH19));"ü";"û"))
M19 a minimum érték N19 a maximum érték, O-tól Ah-ig adatok AI-ban a képlet ami ellenőrzi hogy benne van-e az adott intervallumban az összes szám és ha igen akkor Ü-betű windings betűtípussal ami pipa lesz a másik ű meg X ha van benne hibás.
-
slashing
senior tag
válasz
Delila_1 #22801 üzenetére
jelen példámnál(szerencsére) nincsen olyan mint neked a Teri akinél nincs adat viszont Emilnél meg van. Nálam ha Terinél nincs adat akkor már Emilnél sem lesz meg Idánál sem lesz és így tovább. Ezért elég hülyén nézett ki a diagram amin maximum 20 értéket jelenítek meg de ha csak kettőhöz volt érték akkor volt 18db 0-ás érték is. A dinamikus tartománnyal meg a diagrammon is csak annyi fog megjelenni ahány tényleges értékem van az üres string-et kapott cellákat nem fogja megjeleníteni.
-
slashing
senior tag
kéne egy kis segítség, valamiért csak nem sikerül pedig az elvét tudom. Névkezelőben kéne egy dinamikusan bővülő tartományt elnevezni ez ugye simán eltolás és darab függvény Függőleges tartománynál semmi gondom nincs vele kismilliószor csináltam de vízszintes tartománynál valamiért nem jutok dűlőre vele. De szerintem már a szét vet az ideg miatt nem ugrik be az a pofonegyszerű dolog ami miatt nem megy.
Mindenképpen darab függvény kell mert a darab2 megszámolja a ="" cellákat is ami nekem nem kell mivel képlettel kerülnek bele az adatok.
az adatok mondjuk az első sorban vannak a 20. oszlopig(T) de úgy kellene nekem ez a tartomány hogy mindig csak azokat vegye a tartomány részének ahol adatok vannak. Az A1 az mindig ="" szóval kell majd a végére egy -1 hogy ezt azért belevegye.
Hogy érthetőbb legyen azért kell mert ebből a tartományból diagram lesz és az üres cellákat nem akarom megjeleníteni rajta 0 értékként (="") kivéve az A1-et ami mindig fix üres cella.
-
slashing
senior tag
válasz
botond187 #22788 üzenetére
hát innentől már csak annyit kell csinálni hogy d1=kezdőérték e1=végérték d2=kigyűjtés kezdő értéke e2=kigyűjtés végértéke a makróban meg ezeket a cellákat el kell nevezni és azokkal helyettesíteni.
valahogy így:
Dim k1, v1, ki1, ki2 As String
k1 = Range("D1")
v1 = Range("E1")
ki1 = Range("D2")
ki2 = Range("E2")if cells(yy,1).value>= K1 and cells(yy,1).value<= V1 then
ugyan így a másik kettőnél is.
és mondjuk a legvégén a next előtti cells(yy, 2)-t átírni mondjuk ActiveCell-re és akkor oda rakja az adatokat amelyik cellára ráállsz a makrófuttatás előtt. Esetleg még egy gombot kirakni a lapra ami indítja a makrót.
Elvileg ennek így működnie kell....
Bocs Fferi50 hogy belekondárkodtam, remélem nem haragszol meg érte.
-
-
-
slashing
senior tag
válasz
Delila_1 #22738 üzenetére
jaj bocsi nem írtam hogy a range("d9") nem kell az csak azért volt ott hogy legalább valahova megkapjam az értéket
szóval ahova beírom oda kapjam vissza az értéket ahova írtam és fontos még hogy nem teljes oszlop mert címmel rendelkezik.
Egyébként azt meg tudod mondani hogy miért nem kell az inStr végén +1 vagy -1 stb karaktert hozzáadni? Mert az elején azzal szívtam hogy a szóköztől számítva kivontam két karakter bal-ra középtől meg hozzáadtam de úgy nem volt jó de mire ez leesett ááhhhggrrrr....
-
slashing
senior tag
Az alábbi kódot hogy kell átírni úgy hogy ha egy tartományon belül legyen az mondjuk A10:A végtelenig és beírok egy értéket 12 15 azt automatikusan átalakítsa nekem ne kelljen külön futtatni a makrót? szóval ahogy leenterezem rögtön átalakítja.
A következőt csinálja most a makró beírom a következő formátumban a fok-ot és a szögpercet pl. 12 15 egy szóközzel elválasztva. Futtatom rá a makrót és átalakítja a szögpercet értékké hogy számolni tudjak vele így lesz a 12°15' -ből 12,25.
Sub fokToErtek()
Dim perc As Double
Dim szog As Double
szog = Left(ActiveCell.Value, InStr(1, ActiveCell.Value, " "))
perc = Mid(ActiveCell.Value, InStr(1, ActiveCell.Value, " "))
Range("d9") = szog + perc / 60
End Sub -
slashing
senior tag
válasz
tgumis #22729 üzenetére
fkeresel először megkeresteted a napi fogyást azt megszorzod a sárga táblázat kiszabat értékével szintén fkeres és visszaosztod a rózsaszín egységtömegével. De ahogy elnézem ehhez kéne a rózsaszín táblázatba egy olyan oszlop ami mindkettő segédtáblázatban benne van. De így még mindig nem fogod tudni követni hogy melyik nap lett új egység kinyitva...
de ezt csak így elméletben anélkül hogy kipróbáltam volna.....
-
slashing
senior tag
válasz
D@reeo #22699 üzenetére
A sortörtést egyszerűen kijelölöd az oszlopot és sortérés megszüntetése. Az entert meg keres és csere keresett szöveg mezőbe: alt nyomvatart számbillentyűn beüt a 010-et és összes cseréje. Ha csak az utóbbit csinálod már akkor is számolni fog a sortörés már nem oszt vagy szoroz a számításkor....
fura hogy vonzák ugyan azok a megoldások egymást ha szó van róla
-
slashing
senior tag
ez a keres és csere nekem is komoly fejtörést okozott múlt héten. Nekem egy pontokat használó ezredes elválasztást kellett vesszőre cserélnem és ha manuálisan csináltam akkor jól végezte a dolgát de amint macroval akartam csinálni ugyan azt már szövegként került a cellába és írta is hogy szám van ott de szövegként formázva. A megoldás meg az lett hogy a pontot PONTRA cseréltem macróval és úgy lett belőle vessző, ne is kérdezzétek ennek az okát. De mire ezt kiderítettem
hál istennek másnak is előfordult ez a jelenség csak ő fordítva akarta.
De most kipróbáltam ezzel a chrw-vel és úgy sem lett jó...
-
slashing
senior tag
válasz
kacsaesokos #22694 üzenetére
szerk.: .....
=HA(HIBÁS(HOL.VAN(B1;$A:$A;0));B1;"") C oszlopba
A oszlop a 270-es a B a 370-es C-ben mutatja azokat amik nincsenek nincsenek az A-ban
-
slashing
senior tag
válasz
slashing #22675 üzenetére
ez kell majd neked szerintem: gyakoriság youtube
-
slashing
senior tag
válasz
Bobrooney #22673 üzenetére
huh most hirtelen nem jut eszembe a pontos menete de ha utánna nézel a gyakoriság vagy norm.eloszl függvénynek. Vagy az egyiknek vagy a másiknak tuti jónak kell lennie de lehet kombinálni kell a kettőt.
Inkább csak a gyakoriság lesz az a norm.eloszlást csak azért jutott eszembe mert akkor kellett használnom mikor a gyakoriságot is.
-
slashing
senior tag
Mivel lehetne helyettesíteni az msgbox-ot? Nem elég az 1024 karakter amit kiíratnék vele. A lenti törlős makró megszámolja hányszor futott le és kiírja hogy hány fájl lett törölve majd kiírja egymás alá a fájlneveket.
Sub DeletTxtFiles()
Dim Filename, Pathname As String, ASN As String, loopcount As Integer, nevek As String
ASN = ActiveSheet.Name
Pathname = "q:\SPC 2010-2012-2013\Bosch\TXT\" & ASN & "\"
Filename = Dir(Pathname & "*.txt")
loopcount = 0
Do While Filename <> ""
nevek = Pathname & Filename & vbNewLine + nevek
loopcount = loopcount + 1
Application.StatusBar = " Türelem, dolgozom! A használatban lévő fájl: " & Pathname & Filename
Kill Pathname & Filename
Filename = Dir
Loop
MsgBox " Az alábbi " & loopcount & " fájl törlésre került:" & vbNewLine & vbNewLine & nevek
Application.StatusBar = ""
End Sub -
slashing
senior tag
Miért nem találja a fájlt?
A kill sornál áll meg file not found-al de nem értem miértSub DeletTxtFiles()
Dim Filename, Pathname As String, ASN As String
ASN = ActiveSheet.Name
Pathname = "q:\SPC 2010-2012-2013\Bosch\TXT\" & ASN & "\"
Filename = Dir(Pathname & "*.txt")
Do While Filename <> ""
Kill "q:\SPC 2010-2012-2013\Bosch\Gyártott termékek\txt\" & Filename
Filename = Dir
Loop
End Sub(excel 2013)
Új hozzászólás Aktív témák
- sziku69: Fűzzük össze a szavakat :)
- Luck Dragon: Asszociációs játék. :)
- Samsung Galaxy S24 Ultra - ha működik, ne változtass!
- Elektromos autók - motorok
- Miért vezet mindenki úgy, mint egy állat?
- Hamarosan megjön az ASUS házak új zászlóshajója
- Formula-1
- sziku69: Szólánc.
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Redmi Note 14 5G - jól sikerült az alapmodell
- További aktív témák...
- Jogtiszta Windows - Office & Vírusirtó licencek- Azonnal - Számlával - Garanciával - Nint.hu
- Microsoft Windows, Office & Vírusirtók: Akciók, Azonnali Szállítás, Garantált Minőség, Garancia!
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Azonnali kézbesítés az év bármely pillanatában
- Gamer PC- Számítógép! Csere-Beszámítás! I5 12400F / RTX 3070 8GB / 32GB DDR4 / 500GB SSD+ 2TB HDD
- BESZÁMÍTÁS! MSI H110M i7 7700 16GB DDR4 250GB SSD 1TB HDD GTX 1660 6GB Zalman N4 Cooler Master 400W
- BESZÁMÍTÁS! MSI B450M R5 5500 16GB DDR4 512GB SSD RTX 2060 Super 8GB Rampage SHIVA ADATA XPG 600W
- Amazfit Active okosóra / Számla / Garancia /
- REFURBISHED és ÚJ - HP USB-C/A Universal Dock G2 docking station (5TW13AA) (DisplayLink)
Állásajánlatok
Cég: FOTC
Város: Budapest