- Asszociációs játék. :)
- Fűzzük össze a szavakat :)
- Miért ne vegyél gagyi kínai LED izzósort...
- Az én érdekes, öszvér videokártyám...….
- Samsung LE40A536T1F LCD TV képhiba
- Szólánc.
- Pendrive-ról bootolható "belakott" debian linux live Ventoy pendrive-on
- Digitális Állampolgárság Program
- leslieke
- Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
-
LOGOUT.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
-
matekmatika
tag
válasz matekmatika #3256 üzenetére
Megtaláltam
-
matekmatika
tag
Sziasztok! Itt is felteszem:VB6 egy változó tartalmát hogy tudom közvetlenül vágólapra tenni?
-
matekmatika
tag
Bakter, nem látszik ez sehogy sem még a kép sem.
=HA(B3=(AB.MAX($B$2:$D$11;1;(HA(C3=''Pisti'';
$G$2:$G$3;HA(C3=''Géza'';$H$2:$H$3;$I$2:
$I$3)))));''Thrue'';''False'')
betördeltem, nem tudom jobb lesz-e -
matekmatika
tag
Először készíteni kell egy kis táblázatot a másik mellé, amiben a kritériumok lesznek.
(Név->Pisti; Név->Géza és Név->Elek)
Majd a következő képletet másold be D3-ba:
=HA(B3=(AB.MAX($B$2:$D$11;1;(HA(C3=''Pisti'';$G$2:$G$3;HA(C3=''Géza'';$H$2:$H$3;$I$2:$I$3)))));''Thrue'';''False'')
vagy ha így jobban látszik:
=HA(B3=(AB.MAX($B$2:$D$11;1;(HA(C3=''Pisti'';$G$2:$G$3;HA(C3=''Géza'';$H$2:$H$3;$I$2:$I$3)))));''Thrue'';''False'')
Majd a cella jobb sarkánál lévő négyzetet megfogva húzd le és másold be az alatta lévő cellákba is.
Ha nem menne: itt a kész táblázat:
[link]
[Szerkesztve] -
matekmatika
tag
válasz #19103744 #2170 üzenetére
Na mégegszer, ezt írtad, azaz kérdezted:
''Még annyit megkérdeznék, ha ráklikkelek valamelyik cellára, és az abban lévő érték már létezik egy másik cellában, hogyan lehetne beállítani, h. valamiképp jelezze, akár pl. kijelőléssel, vagy elszíneződéssel?''
Majd pedig:
''A képlet hivatkozhat az azonos munkalapon, más munkalapon, vagy akár másik munkafüzet valamely munkalapján lévő cellákra.Ez az exel súgója...
Ezek szerint képlettel is meg lehet csinálni?''
Elöször is azt kellene akkor tisztázni, hogy '' ha ráklikkelsz egy cellára'' ez úgy általában akármelyik cella is lehet vagy konkrét cella, ''és az abban lévő érték már létezik egy másik cellában'', szintén az a kérdés, egy konkrét cellával, vagy az összes cellával kell összehasonlítani?
Ha egy konkrét cellát akarsz összehasonlítani egy konkrét cellával, akkor meg lehet csinálni képlettel. Ha az összes cellát szeretnéd az összes cellával, vagy egy másik munkalap összes cellájával, akkor minden cellába képletet akarsz írni???
És akkor hol lesznek maguk az adatok? Képletet meg nem célszerű képlettel összehasonlítani.
Szóval nem értelek.
Mint írtam én csak makróval tudnám megcsinálni. Ennyi. -
matekmatika
tag
válasz #19103744 #2163 üzenetére
Bocs, de éppen nem voltam office közelében, így fejből írtam.
A
=H12:H75+K12:K75
helyett
=SZUM(H12:H75;K12:K75)
ez kell.
''Még annyit megkérdeznék, ha ráklikkelek valamelyik cellára, és az abban lévő érték már létezik egy másik cellában, hogyan lehetne beállítani, h. valamiképp jelezze, akár pl. kijelőléssel, vagy elszíneződéssel?''
Makrót kell hozzá írni. (szerintem, én máshogy nem tudnám) -
matekmatika
tag
válasz #19103744 #2157 üzenetére
Nem értelek benneteket, az gugliba beírva számtalan olyan linket ad, amelyeken jobbnál jobb anyagok találhatók.
Most én is írhatnék ide több oldalnyit is, de nem teszem. Azaz egy párat esetleg
[link]
[link]
[link]
[link]
(A második letölthető)
Nos, akkor szépen sorban:
1. C és D különbségét E-be, de az eredmény mndíg pozitív legyen. Ráállsz az E1-es cellába és beírod a következő képletet:
=ABS(C1-D1)
Majd Enter után, vissza ráálssz E1-re, fogod a jobbalsó srokban lévő pici fekete négyzetet és bal egérgombot lenyomva addig húzod lefele, amíg a képleteket szeretnéd.
2. E oszlopot 12-től 75-ig adja össze G5-be. Ráállsz G5-re és beírod:
=E12:E75
3. A kicsit bonyolultabb F-G->H-t és I-J->K-t dettó ugyanúgy kell csinálnod, mint ahogy tetted C-D->E-vel. Csak most H1 ill. K1-be írod a képleteket.
4.Majd mindkettő eredménye G7-ben összegződik. Ez nem teljesen világos, de lehet erre gondoltál:
=H12:H75+K12:K75
5. D12-t egy másik munkalap D18-as cellájába ''átvinni''. ''Munka1'' és ''Munka2'' munkalapokat feltételezve, ''Munka1'' D12-es cella értéke ''Munka2'' D18-as cellájában úgy fog automatikusan bekerülni, ha ''Munka2'' D18-as cellájába beírod:
=Munka1!D12 -
matekmatika
tag
válasz BobChemistry #2111 üzenetére
Konkrétabban?
-
matekmatika
tag
Hát...izé... Nem munkafüzet1-et kellene megnyitnia? A kód a munkafüzet2-ben van tehát ha fut, az alapból meg kell hogy nyitva legyen.
Vagy te az munkafüzet1-be raktad a kódot?
mert ha igen akkor munkafüzet1 helyett munkafüzet2-re írd át
ErrorHandler:
Workbooks.Open Filename:=''munkafüzet2.xls''
End Sub
így.
[Szerkesztve] -
matekmatika
tag
Igazából nem hibakereső
Csak ha adódna a kód futása közben hiba (mondjuk nem tudná aktívvá tenni az adott munkafüzetet, mert nincs megnyitva), akkor az ott leírt utasítást hajtja végre. (jelen esetben megnyitja)
Persze ez így csak akkor igaz, ha a munkafüzet1 és ...2 ugyanabban a mappában van. Ha nem, akkor path-ot is meg kell adni. -
matekmatika
tag
Persze a követkaző formula kicsit elegánsabb. Nem csak azért, mert van benne egy hibakezelés is arra az esetre, ha nem lenne nyitva a másolandó adatokat tartalmazó munkafüzet, hanem mert csak
Sub akarmi()
On Error GoTo ErrorHandler
Workbooks(''munkafüzet1.xls'').Activate
Columns(''A:A'').Select
Selection.Copy
Workbooks(''munkafüzet2.xls'').Activate
Cells(1, 1).Select
ActiveSheet.Paste
Exit Sub
ErrorHandler:
Workbooks.Open Filename:=''munkafüzet1.xls''
End Sub -
matekmatika
tag
Találkoztam már többször én is ezzel a hiányosságával az vb-nek. Tartományt nem tud kezelni közvetlenül, de ha beszúrsz egy modult és a tartomány kijelölést, valamint a másik munkalapon a beillesztést az ott lévő függvényben vagy eljárásban végezteted el akkor működni fog.
Tehát ahol a kódod van ott Insert-module. Majd itt a modulon végezteted el a tartomány kijelölés-másolás-beillesztést.
Sub akarmi()
Windows(''munkafüzet1.xls'').Activate
Columns(''A:A'').Select
Selection.Copy
Windows(''munkafüzet2.xls'').Activate
cells(1,1).select
activesheet.paste
end sub
Az eredeti kódod helyén pedig egyszerűen maghívod az akarmi-t. Így:
akarmi
Ha nem megy írj megcsinálom.
[Szerkesztve] -
matekmatika
tag
Na mindegy, A-B-C oszlopra nézve a képlet:
=HA(HIBÁS(HOL.VAN(F2;A:A;0));HA(HIBÁS(HOL.VAN(F2;B;0));HA(HIBÁS(HOL.VAN(F2;C;0));''Nincs ilyen'';''C'');''B'');''A'')
ahol az F2-be van a keresett érték.
Ha több oszlopra is ki kell terjeszteni a keresést akkor ez alapján már menni fog.
Valóságban:
[link] -
matekmatika
tag
válasz matekmatika #2072 üzenetére
Sajnos az előző kóddal csak addig működött amíg fel nem töltöttem, mert letöltve már nem volt jó. A link-ben levő munkafüzetben már javítottam a kódot, helyesen:
Set leir = Worksheets(''leírás'')
a = 9 'az ''alap'' munkalapodon az első cellád sora (E9 vagyis 9)
b = 11 'az ''alap'' munkalapodon az utolsó cellád sora (E11 vagyis 11)
c = 5 'az ''alap'' munkalapodon a szöveget tartalmazó oszlopod száma (E vagyis 5)
i = 1 'a ''leírás'' m.lapon az első leírást tartalmazó cellád sora (A1 vagyis 1)
j = 1 'a ''leírás'' m.lapon a leírásokat tartalmazó celláid oszlopa (A vagyis 1)
For k = a To b
Range(Cells(k, c), Cells(k, c)).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:='''', SubAddress:= _
''leírás!A'' & i, TextToDisplay:=Selection.Value
i = i + 1
Next k -
matekmatika
tag
Pedig ennek mennie kellene:
[link] -
matekmatika
tag
válasz BoGyo[ME] #2070 üzenetére
1. Készíts akkor egy makrót, (ESZKÖZÖK -> Makró -> Makrók..., Makrónévhez beírsz egy nevet (pl. hyper, de bármi lehet amit nem foglalt le magának a VB ), majd: Létrehozás.
2. Másold be ezt a Sub makróneve() és az End Sub közé:
Set leir = Worksheets(''leírás'')
a = 9 'az ''alap'' munkalapodon az első cellád sora (E9 vagyis 9)
b = 11 'az ''alap'' munkalapodon az utolsó cellád sora (E11 vagyis 11)
c = 5 'az ''alap'' munkalapodon a szöveget tartalmazó oszlopod száma (E vagyis 5)
i = 1 'a ''leírás'' m.lapon az első leírást tartalmazó cellád sora (A1 vagyis 1)
j = 1 'a ''leírás'' m.lapon a leírásokat tartalmazó celláid oszlopa (A vagyis 1)
For k = a To b
Range(Cells(k, c), Cells(k, c)).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:='''', SubAddress:= _
leir.Cells(i, j).Value, TextToDisplay:=Selection.Value
i = i + 1
Next k
3. Majd futtasd le.
Próbáltam elég állítási lehetőséget beletenni, illetve magyarázatot hozzá.
Ha mégsem menne (de csak akkor ) itt megnézheted mit is csinál, remélem erre gondoltál, bár sok fantáziája nem lehetett annak aki kitalálta. (bocs )
(katt a command button-ra)
Hopp, a tar.hu -ra a feltöltés nem müxik az uw-t meg nem akaródzik rájönnöm hogy kell belinkelni, ha tudja vki segíthet
[link]
[Szerkesztve] -
matekmatika
tag
válasz BoGyo[ME] #2067 üzenetére
1. Kézzel egyesével
2. Nem tudom
3. Makróval
De ha már makró akkor nekem praktikusabb lenne a hiperhivatkozások helyett megjegyzésekbe pakolni a leírást.
Mert így:
- egy munkalapot megspórolsz
- a szöveg fölé állva egyből látod a leírást (nem kell kattintani)
- hiperhivatkozásnál vagy vissza kell hivatkoznod az eredeti munkalapodra vagy kézzel
visszakattintani, ha elolvastad a leírást. -
matekmatika
tag
Hát így most kapásból általánosat azért nem tudok mondani, mert nem tudhatom hány cellára bontottad szét a sorokat, illetve mindegyik sor ugyanannyi cellára lett-e bontva, vagy nem.
Ha pl A1-A2-A3-A4 cellákat akarod egyesíteni $ karakterekkel elválasztva azt:
mondjuk A5-be beírt =A1 & ''$'' & A2 & ''$'' & A3 & ''$'' & A4 függvénnyel teheted meg.
Ha a cellák száma vízszintesen változó, akkor passzolnám a kérdést, illetve ez esetben én makróval próbálkoznék, azzal egyszerűbb - nekem. -
matekmatika
tag
válasz matekmatika #2039 üzenetére
A szemtelen
Nem tudom vigyorgás nélkül.
Hacsak...
[Szerkesztve] -
matekmatika
tag
''Munka1'' és ''Munka2'' munkalapokat feltételezve:
Munka1 A oszlopában nevek, B oszlopában telefonszámok, ekkor
Munka2 A1 cellájába ha beírsz egy nevet (amely szerepel Munka1 A oszlopában) a mellette levő B1 cellába pedig a következő képletet:
=FKERES(A1;Munka1!A;2;HAMIS)
akkor a B1-ben megjelenik a megfelelő telefonszám. Ezt a képletet a cella jobb alsó sarkában levő négyzetet ha lehúzod, tovább tudod másolni az alatta levő cellákba is.
Persze ennél szebb a:
=HA(A1='''';'''';FKERES(A1;Munka1!A;2;HAMIS))
képlet mert itt nincs #HIÁNYZIK felirat abban az esetben ha Munka2 A1 cellája még üres. -
matekmatika
tag
válasz Dictator^ #2015 üzenetére
És mi nem tökéletes benne?
Meg most azt írtad a mező színét színezi ki amit találtál. Eddig az volt hogy egy cellán belül több tétel is van és azok más-más színűek legyenek. Most akkor csak szimplán meg kell jelölni azt a cellát amiben egy tétel szerepel máshol is?Kezdem elveszíteni a fonalat
Miért nem linkeled be a táblázatot és akkor talán könyebb lenne megérteni? -
matekmatika
tag
-
matekmatika
tag
A darabteli fv.-t DARABTELI(tartomány;kritérium) alakban kell megadni.
Bár kicsit megtekerve itt használható, ha a kritériumot úgy alakítjuk hogy a ''nemüres'' celláknak feleljen meg, de szerintem itt a DARAB2(tartomány) egyszerűbb lenne.
Ez utóbbi fv. a megadott tartomány területen található kitöltött cellák számát adja eredményül. -
matekmatika
tag
válasz Dictator^ #1954 üzenetére
Visszatérve egy korábbi hozzászólásodra, hogy annyira nem lehet nehéz megcsinálni..., lehet, hogy van akinek nem. Nekem azért kellett vele bírkozni egy kicsit. Nem lehetett volna a tételeket cellánként kezelni?
Itt a végeredmény, hozz létre egy új makrót és illeszd be:
Sub Szinezos()
'Hivatkozni szeretnék majd az aktuális munkalapra
'és mivel nem tudom mi most a neve nálad ezért
'először átnevezem ''Tételek''-re
ActiveSheet.Name = ''Tételek''
'Az utolsó sor száma
sor = ActiveSheet.UsedRange.Rows.Count
'Az utolsó oszlop száma
oszlop = ActiveSheet.UsedRange.Columns.Count
'Alapértelmezett szín
szin = 0
'Létrehozunk egy segéd munkalapot
Worksheets.Add.Name = ''seged''
'melyre a ''seged''-del fogunk hivatkozni
Set seged = Worksheets(''seged'')
'Aktívvá tesszük ismét a Munka1-t
Worksheets(''Tételek'').Activate
x = 0
'Két ciklussal végigmegyünk a cellákon
For j = 1 To oszlop
For i = 1 To sor
'aktuális cella
cella = Cells(i, j)
'cella karaktereinek száma
h = Len(cella)
''',''-t keres a szövegben
a = InStr(cella, '','')
'Ha nincs ''a'' értéke: 0 lesz
'Ha van akkor '','' pozícióját adja
If a > 0 Then
elso = Left(cella, a - 1)
masodik = Right(cella, h - a - 1)
'Ha nem talál '',''-t a beírt szövegben
Else
'Akkor az első legyen maga a cella tartalma
elso = cella
'Második tétel pedig nincs
masodik = 0
End If
'A kapott tételeket eltároljuk a segéd munkalapon
If elso <> Empty Then
x = x + 1
seged.Cells(x, 1) = elso
End If
If masodik <> Empty Then
x = x + 1
seged.Cells(x, 1) = masodik
End If
Next i
Next j
'Tételek átnézése azonosak megjelölése
Application.ScreenUpdating = False
Sheets(''seged'').Select
Columns(''A:A'').Select
Selection.Sort Key1:=Range(''A:A''), Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom
Do While Cells(1, 1) = Empty
Cells(1, 1).Select
Selection.Delete Shift:=xlUp
Loop
a = 2
b = 1
Cells(1, 2) = Cells(1, 1)
Do While Cells(a, 1) <> Empty
If Cells(a + 1, 1) = Cells(b, 2) Then
Cells(b, 3) = Cells(b, 3) + 1
Else
Cells(b + 1, 2) = Cells(a + 1, 1)
Cells(b, 3) = Cells(b, 3) + 1
b = b + 1
End If
a = a + 1
Loop
Sheets(''Tételek'').Select
i = 1
szin = 2
Do While seged.Cells(i, 2) <> Empty
If seged.Cells(i, 3) > 1 Then
For j = 1 To sor
For k = 1 To oszlop
cella = Cells(j, k)
If cella Like ''*'' & seged.Cells(i, 2) & ''*'' Then
kezd = InStr(cella, seged.Cells(i, 2))
hossz = Len(seged.Cells(i, 2))
h = InStr(cella, '','')
If h > 0 Then
With Cells(j, k).Characters(Start:=kezd, Length:=hossz).Font
.FontStyle = ''Félkövér''
.ColorIndex = szin
End With
If Left(cella, h - 1) = Right(cella, Len(cella) - h - 1) Then
With Cells(j, k).Font
.FontStyle = ''Félkövér''
.ColorIndex = szin
End With
End If
Else
With Cells(j, k).Font
.FontStyle = ''Félkövér''
.ColorIndex = szin
End With
End If
End If
Next k
Next j
End If
i = i + 1
szin = szin + 1
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = False
Worksheets(''seged'').Delete
Application.DisplayAlerts = True
End Sub
vagy dolgozd át ezt, itt megnézheted konkrétan mit csinál: [link]
[Szerkesztve] -
matekmatika
tag
válasz Dictator^ #1951 üzenetére
Hát lehet, hogy rosszul gondolkodom, de ha egy programnak végig kell néznie egy adott területet, hogy van-e egyforma szó, akkor valahogy keresnie kell. Igaz nem neked, hanem a programnak.
A példádat nézve viszont nekem úgy tűnik megsem szavakat kell összehasonlítani, hanem cellákat. Az én eredeti elképzelésem szerint pl. Coca-Cola 3dl és a Coca-Cola 4dl összehasonlítva a Coca-Cola azonos lenne, a 3dl és a 4dl különböző. De neked nem ez kell ezek szerint, hanem hogy az összes Coca-Cola 3dl egy színű legyen illetve az összes Coca-Cola 4dl is csak mondjuk másmilyen színű. Ha jól értem. -
matekmatika
tag
válasz Dictator^ #1942 üzenetére
Tudod előre mely szavak szerepelnek többször több cellában is, mert az nagyban megkönnyítené a keresést, vagy ezt is a programnak kellene megkeresni. Ez utóbbi esetben, ha hosszabb a szöveg baromira lelassítja a keresést.
Milyen szavakról lenne szó? Pl. magánhangzók szerepelnek-e benne, vagy számok? -
matekmatika
tag
1. Nem valószínű, ha neked 500 db összefűzendő cellád van, hogy az mind beleférjen majd B1-be. Csak szólok.
2.Hozz létre egy új makrót. (Eszközök-Makró-Makrók..., adj meg valami nevet neki pl. osszefuz, Létrehozás) Majd másold be a Sub osszefuz() és az End Sub közé ezt:
i = 2
Cells(1, 2) = Cells(1, 1)
Do While Cells(i, 1) <> Empty
Cells(1, 2) = Cells(1, 2) & ''|'' & Cells(i, 1)
i = i + 1
Loop
3. Zárd be a makroszerkesztőt. Ugyanott ahol létrehoztad indítsd el. -
matekmatika
tag
Hát...bocs, nem láttam, hogy fizetős, de szerintem ez nem okozhat olyan nagy gondot....
Ha nem boldogulsz vele és érdekel dobj meg egy e-maillel.
például:
ActiveSheet.PageSetup.PrintArea = ''$C$46:$C$59''
ActiveWindow.SelectedSheets.PrintOut
természetesen a tartományt írd át ahogy neked megfelel -
matekmatika
tag
PDF.FileName = ''HelloPDF_VB.pdf''
sorban a HelloPDF_VB.pdf-t cseréld le erre: Cells(2,2)
(idézőjelek nélkül, tehát: PDF.FileName = Cells(2,2))
Ja, természetesen a B2-be ilyenkor a kiterjesztéssel együtt kell szerepelnie a leendő pdf fájlnévnek. Tehát valami.pdf
Ha kiterjesztés nélkül van akkor azt a fenti sort így módosítsd:
PDF.FileName = Cells(2,2) & ''.pdf''
[Szerkesztve] -
matekmatika
tag
válasz falvaas #1912 üzenetére
Kijelölöd azt az oszlopot amelyiket fel akarod darabolni cellákra, majd: Adatok - Szövegből oszlopok - Tagolt kapcsoló bejelölve <Tovább> - Vessző jelölőnégyzet kiválasztva <Tovább> - Itt formázhatod melyik oszlop milyen formátumú legyen (ha nem akarod formázni akkkor az előbbi <Tovább> helyett <Befejezés>-t is nyomhatsz.
Jah, hogy ez már meg van válaszolva
[Szerkesztve] -
matekmatika
tag
válasz gonosz yoda #1853 üzenetére
Sub SelAllData()
Application.ScreenUpdating = False
Dim myLastRow As Long
Dim myLastColumn As Long
Range(''A1'').Select
On Error Resume Next
myLastRow = Cells.Find(''*'', [A1], , , xlByRows, xlPrevious).Row
myLastColumn = Cells.Find(''*'', [A1], , , xlByColumns, xlPrevious).Column
myLastCell = Cells(myLastRow, myLastColumn).Address
myRange = ''a1:'' & myLastCell
Application.ScreenUpdating = True
Range(myRange).Select
End Sub -
matekmatika
tag
Hú, azért nem semmi volt ezt felfogni ilyen későn, vagyis amit írtál azt értettem, de hogy ha mondjuk a cellába beírtam, hogy 12345 és ráengedtem ezt:
ActiveCell = Application.round(ActiveCell, -3)
nah, hogy ebből hogy lett 12000 ez még elég megerőltető volt kitalálni
Ki volt az az agyament akinek a -3 az 10 a harmadikon
Köszi mégegyszer -
matekmatika
tag
Senki?
-
matekmatika
tag
Valaki meg tudná mondani a következő kódok mit csinálnak, illetve mire valók?:
ActiveCell = Application.round(ActiveCell, -3)
ActiveCell = Application.Ceiling(ActiveCell, 1000)
ActiveCell = Application.Floor(ActiveCell, 1000)
Köszi. -
matekmatika
tag
Esetleg így?:
Private Sub Break()
i = 1
Range(''B : B'').Select
Selection.Find(What:=''aaa'', After:=ActiveCell, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Rows.Select
Do While Cells(i, 2) <> Empty
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell
Cells.FindNext(After:=ActiveCell).Activate
i = i + 1
Loop
End Sub
Bár lehet nem a legtökéletesebb de nálam működik.
[Szerkesztve]
[Szerkesztve] -
matekmatika
tag
válasz Tibicsoki82 #1798 üzenetére
Készíts egy ciklust amely a B oszlop (lefordított, magyar szavak) legelső üres cellájától a legutolsó sorig végiglépked az A oszlop (angol) szavakon, de csak azokon a soroknál ahol a B oszlopba még nincs írva. Egy inputboxban kíírja az angol szót, te meg megadod a hozzá a magyart. Majd itt jön egy újabb ciklus ami lefele végigmegy, és az összes ilyen angol szóhoz beírja a megfelelőjét a B oszlopba. A Cancel gombra pedig (ha megunod, elfáradtál) lépjen ki a ciklusból. A következőleg folytatod, ugye megint a legelső olyan B cellánál kezdi amely üres, vagyis ahol előzőleg abbahagytad.
-
matekmatika
tag
-
matekmatika
tag
válasz katavagyok #1795 üzenetére
[link]
Próbáld ezzel -
matekmatika
tag
válasz katavagyok #1793 üzenetére
Csak megnézni akarod, vagy szerkeszteni is?
-
matekmatika
tag
válasz gepesz13 #1785 üzenetére
Katt a Linkre.
Letöltötted? Mert neked gyakorlatilag nem kell vele semmit csinálnod, csak ahol kell neked a hivatkozásba az utolsó sorban lévő A és B oszlop cellái oda beírod azt ami E5 F5-ben van.
Ha nem boldogulsz küldd, de csak akkor foglalkozok vele, ha néhány perc alatt megvan. Nagyon nincs időm belefolyni. -
matekmatika
tag
válasz gepesz13 #1780 üzenetére
Hát.., lehet hogy van rá beépített fv. de én nem ismerem.
Ha más nem ajánl jobbat akkor itt az ideje egy saját fv. létrehozására
[link]
Összedobtam gyorsan valami hasonlót. Magát a megírt függvényt az Alt+F11-el tudod megnézni, a Module1-ben van, és valahogy így néz ki:
Function sajatFv(x) As Integer
Dim LastRow As Long
ActiveSheet.UsedRange
LastRow = Cells(Cells.Rows.Count, ''A'').End(xlUp).Row
sajatFv = LastRow
End Function
A fv-t pedig a
=sajatFv(MOST())
begépelésével tudod meghívni.
Attól függően, hogy te hová akarod használni a hivatkozást és milyen formában, majd átalakítod.
Ha ''A1'' formula kell akkor arra a E5-F5 cellákban látsz példát, itt annyi csak, hogy eléberakja az utolsó sor száma elé az oszlop betűjelét (''A'' & sor).
[Szerkesztve] -
matekmatika
tag
válasz gepesz13 #1777 üzenetére
Ez esetben az első variációt ajánlanám, ha megfelel. Ha úgy van mint írtam akkor B1-be beírod a képletet:
=HA(A1='''';'''';O1)
O oszlopba pedig sorba, amit B-be írtál volna.
Ha nem az O oszlopba írod hanem valamelyik másikba, akkor természetesen írd át a képletet.
Majd B1 cellára állj rá és a bal alsó sarkában lévő kis négyzetet húzd le addig a bal egérgombot nyomvatartva, ameddig az adataid lesznek.
Ezután pl. ha A10 ben van valami akkor B10-be bekerül O10 tartalma, viszont ha kitörlöd A10 tartalmát, akkor B10-be '''' kerül, azaz semmi. -
matekmatika
tag
válasz gepesz13 #1774 üzenetére
Hirtelen két lehetőség ugrott be:
1. Azoknak a celláknak a tartalmát amelyeket el akarsz rejteni esetenként, máshová rakod. Ha nem szeretnéd, hogy látszódjon akkor egy távolabbi oszlopba (esetleg el is rejtheted). Majd használod a : =HA(A1='''';'''';O1) függvényt, ahol az A1 az a cella aminek tartalmától függően B1- ben megjelenik O1 tartalma, vagy sem. (a képlet természetesen a B1-ben van, majd ezt képletet lemásolod ameddig akarod).
2. Készítesz egy saját függvényt amely nevezzük most A1 cella tartalmától (vagy éppen tartalmatlanságától függően átírja B1-ben lévő adat színét. Ha A1 üres akkor B' cella háttere (alapesetben fehér), fehérre, így nem fog látszani, ha pedig A1-ben van adat, akkor feketére, vagy amilyenre akarod .
(szerk: 1. variációban nem dupla aposztrófok vannak a képletben, hanem idézőjelek!)
[Szerkesztve] -
matekmatika
tag
válasz martimedia #1765 üzenetére
Nem lehet hogy az excel fájlok más alkalmazáshoz lettek társítva? Mert akkor csak vissza kell társítani. Lotus-hoz nem értek
-
matekmatika
tag
Megoldottam már, nem kell.
(oWord.Selection.Paste) -
matekmatika
tag
Odáig már eljutottam, hogy nyitok egy új word dokumentumot, majd elmentem és bezárom, de a vágólap tartalmát (amit a masol eljárással jelölök ki egy modulon) nem tudom beilleszteni.
Private Sub CommandButton1_Click()
Dim oWord As Object
Dim oDok As Object
masol
Set oWord = CreateObject(''Word.Application'')
Set oDok = oWord.Documents.Add
Selection.PasteSpecial Paste:=xlFormats
oDok.SaveAs ''E:\Book1.doc''
oWord.Quit
End Sub -
matekmatika
tag
Sziasztok! Hogy lehet excelből visualbasic kóddal word documentumként elmenteni az aktuális munkalapot?
(Gondolom, létre kell hozni az új word dokumentumot beilleszteni a munkalapot majd elmenteni, csak az a kérdés hogyan?) -
matekmatika
tag
válasz falvaas #1699 üzenetére
Hát..
Elkezdhetném, hogy nyitottam egy új munkafüzhetet és az első munkalapját elneveztem Adattáblának, melybe bemásoltam az általad ismert adatokat, majd....stb., de a megírt makró ismertetésénél belefáradnánk mind a ketten. Ha ismered a visualbasicet akkor a Nézet/Eszköztárakban ha bekapcsolod láthatod a kódot, és ha valamit konkrétan nem értesz belőle szívesen elmagyarázom. Ellenben ha nem, akkor hiába is kezdeném leírni, hogy hogyan működik - túl hosszú lenne.
A lényeg ha tudod használni ezt a munkafüzetet akkor az Adattáblába átrakhatod az adatbázisodat, a kód úgy van megírva, hogy addig nézi az adatokat amíg üres cellához nem ér az A oszlopban. Ill. ha nem lennének sorba az egy naphoz tartozó A-B-C-D adatok, vagy bármelyik is hiányozna, akkor is helyrepakolja a meglévő adatokat. Az adatok számának csak a galád excel tulajdonságai szab határt.
Ha ez a munkafüzet nem jó ebben a formában, akkor küldd el amelyikben meg kellene ezt valósítani, vagy linkeld be ide, szívesen megcsinálom. -
matekmatika
tag
Mielőtt belemélyednénk nagyon a makrózásba, úgy nem jó, hogy felcseréled a megnevezés és érték oszlopokat, aztán mindkettőt kijelölve növekvő sorrenbe rendezed? Mert ugye ekkor az első 5 sorban lesz az 5 legnagyobb értékű.
Ha pedig ragaszkodsz a makróhoz akkor lenne egy kérdésem. Mi történjen akkor, ha mondjuk 5-nél több legnagyobb értékű sor is van? (pl. a 12-es érték a legnagyobb az oszlopban, de ebből van 8db)
[Szerkesztve]
Új hozzászólás Aktív témák
- Windows 10/11 Home/Pro , Office 2024 kulcsok
- Bitdefender Total Security 3év/3eszköz! - Tökéletes védelem, Újévi kedvező ár!
- Karácsonyi akció: ESET termékek hivatalos forgalmazója / NOD32 / Internet Security / stb.
- Játékkulcsok a legjobb áron: Steam
- Indiana Jones and the Great Circle - Digital Premium Edition - beváltás: 2025.1.30 - RTX 40XX
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest