Hirdetés
-
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
-
karlkani
aktív tag
válasz Fferi50 #52684 üzenetére
Szia!
Megcsináltam a megjegyzést makróval, működik.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C1:C2")) Is Nothing Then
Call Megjegyzes
End If
End SubSub Megjegyzes()
With Range("A1")
If Not .Comment Is Nothing Then .Comment.Delete
.AddComment
.Comment.Text "megjegyzes"
.Comment.Shape.TextFrame.Characters.Font.Bold = True
.Comment.Shape.TextFrame.AutoSize = True
End With
End SubKéne egy kis segítség. A gondom az, hogy a megjegyzést TÖBB cellába kéne betenni. Néztem pár útmutatót, de nem sikerül a
For Each Cell
-t beépíteni, hogy működjön... -
Delila_1
veterán
válasz karlkani #52701 üzenetére
Szia,
Indítás előtt kijelölheted a cellákat.Range("A2, B2:D8").Select
, de lehet "gyalogosan" is.Sub Megjegyzes()
Dim CV As Object
For Each CV In Selection
If Not CV.Comment Is Nothing Then CV.Comment.Delete
CV.AddComment
CV.Comment.Text "megjegyzes"
CV.Comment.Shape.TextFrame.Characters.Font.Bold = True
CV.Comment.Shape.TextFrame.AutoSize = True
Next
End Sub
[ 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.
-
lanszelot
addikt
Hello,
Van egy szám sorom C1 - től Z1 -ig.
Mindegyik számot szeretném A1 értékével megszorozni, de úgy, hogy nem külön cellákba
Azaz a
C1 eredeti értéke: "34"
C1 módosított értéke "+34*A1"
Azt a módszert tudom, hogy egyesével átirom .
Lehet e egyszerűbben? -
Delila_1
veterán
válasz lanszelot #52705 üzenetére
A C2 cella képlete =$A$1+C1
Ezt másolod végig a sorban. Kijelölöd a képleteket tartalmaz cellákat, másolod (Ctrl+C), majd irányítottan beilleszted értékként a C1-től kezdve.
A 2. sort törölheted.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
-
lappy
őstag
válasz Delila_1 #52706 üzenetére
$A1$1*C1
lanszelot
C2 cellába beírod a képletet ha erre ráállsz akkor a jobb alsó sarokban lesz egy fekete kereszt ekkor megfogod és végig húzod a Z oszlopig
Ezután kijelölöd a kapott értékeket majd másolás a beillesztès pedig ugy történik hogy jobb gomb es csak az értékeket másolja be[ Szerkesztve ]
Bámulatos hol tart már a tudomány!
-
csongi
veterán
Sziasztok!
2019 Office
Hogyan lehet megoldani ezt?
Nem tudom jobban leírni
-
Mutt
senior tag
válasz lanszelot #52705 üzenetére
Szia,
Erre van az Irányított beillesztés múvelet opciója.
Kiválasztod az A1-t, majd Ctrl-C-vel vágólapra másolod. Aztán kijelölöd a C1:Z1-részt és Beillesztés -> Irányított beillesztést választod, ott a Szorzást bepipálod és mehet az OK.üdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Mutt
senior tag
válasz csongi #52713 üzenetére
Szia,
Ahogy Feri írta FKERES, de mivel friss az Exceled lehet az XKERES is.
D7-ben a képlet: =XKERES(A7;'Kcal Értékek'!A:A;'Kcal Értékek'!B:B)/100*C7üdv
[ Szerkesztve ]
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
Rhair
csendes tag
Sziasztok
Tudnátok mondani könyveket, weboldalakat, esetleg yt csatornákat amik haladó szinten foglalkoznak az excellel és nem elavultak?
Illetve van valakinek tapasztalata exceltitok v excelneked oldalakkal és az ott elérhető könyvekkel?
Köszi -
lanszelot
addikt
válasz Delila_1 #52718 üzenetére
Először is köszönöm szépen.
Ez sem jó.
Paste -> Paste specialMivel ha át írom az A1-et akkor semmi sem történik C1-Z1 cellákban.
Újra és újra meg kellene csinálnom a folyamatot.Ugyanazt a képletet kellene hozzá adom különböző cellákhoz:
+A1x(aktuális cella tartalma)[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz lanszelot #52721 üzenetére
Szia!
Most, hogy mégegyszer figyelmesen elolvastam amit írsz, az a válaszom, hogy ez így nem megoldható képlettel:
"Ugyanazt a képletet kellene hozzá adom különböző cellákhoz:
+A1x(aktuális cella tartalma)"
Egy adott cellába nem írhatsz olyan képletet, ami saját magára (aktuális cella!) hivatkozik. Ill. írhatsz, de az hibás eredményt, leginkább 0-t fog eredményezni.
Az A1 x aktuális cella eredményét egy harmadik cellába kell képletezned! Ezután a harmadik cella értéke automatikusan változik, akár az A1, akár az "aktuális cella" értékét változtatod meg.
A javaslat a következő:
Ez a kiindulás.
A következő lépés: B2 cellára Ctrl+C (másolás)
Utána kijelölöd ahova szeretnéd a képletet, pl. C2 : D5
Ezután Paste - Paste Special - Formulas Eredmény:
Ezután A1 cella értékét változtatom 10-re. Eredmény:
Ha ez így nem működik nálad, akkor szerintem mutasd be legalább képpel, mit szeretnél elérni, mert lehet, hogy félreértünk valamit.
Üdv.[ Szerkesztve ]
-
Mutt
senior tag
Szia,
Szerintem az alapokat kell elsajátítani/magabiztossan kezelni és utána lehet elővenni a haladó dolgokat, amelyek véleményem szerint az alábbiak lehetnek hasznossági sorrendben:
- táblázatok,
- kimutatás/pivot,
- Solver,
- tömbfüggvények (annó CSE bevitel, pl. SZORZATÖSSZEG/ÖSSZESÍT mindenre),
- Power Query/Power Pivot,
- dinamikus tömbök (spill, @ és # jelentése) illetve újabb függvények (LET, LAMBDA, XLOOKUP/XMATCH/BY...)
- VBA,
- DAX függvények (itt Power BI felé lehet kacsingatni)
- Office Script illetve Py szkript (ezek MS365-ben),
- Excel4 függvények (talán egyedül EVALUATE)Szerintem ne azt keresd, hogy mi a legfrissebb, mert nagyon sokan még régi verziójú Excelt használnak, nekik is mindig van megoldás a problémára. Az elmúlt években a Microsoft önti az újabb függvényeket az Excelbe, de ezek elterjedése lassan megy és nincs is mindenkinek szüksége rá.
pl. mindenki adott össze már számokat Excelben, 2 éve van a REDUCE amivel lehet összeadni is, de nem hinném hogy a SZUMHATÖBB (eseteg SZORZATÖSSZEG/ÖSSZESÍT) helyére fog valaha is lépni.Ha a fenti listában lévő dolgok újdonságok neked, és nincs időd mindet megismerni, akkor Power Query-vel kezdj szerintem.
Youtube-on én az alábbi csatornákat tudom javasolni:
1) Mike Girvin: https://www.youtube.com/@excelisfun
Erőssége: tömbfüggvények (kb. 4 évvel ezelőtt, van is könyve róla), az elmúlt időszakban főleg Power Query/Power Pivot/DAX és az új Excel függvényeket használja.Sok hosszabb videója van, ami alapokat magyaráz hogy a haladó dolgokat meg lehessen érteni.
2) Bill Jelen aka MrExcel: https://www.youtube.com/@MrXL
Erőssége: rövid videók a legfontosabb változásokról, illetve ha 4-5 évet visszamész a csatornán, akkor tipikus problémákra mutat megoldásokat. volt egy Duelling Excel sorozat, amiben jó példák voltak.
3) Mynda: https://www.youtube.com/@MyOnlineTrainingHub
Erőssége: változatos videók, alaposan bemutatva adott függvényt vagy problémát.
4) VBA-hoz Paul csatornája: https://www.youtube.com/@Excelmacromastery
Kezdőknek jó a csatorna, mert tippeket ad hatékony kód íráshoz. Hátránya, hogy szinte mindig vagy collection vagy class module lesz a vége.
5) DAX/Power BI/Power Query:
- Goodly: https://www.youtube.com/@GoodlyChandeep
- Marco/Alberto: https://www.youtube.com/@SQLBI
- BAS: https://www.youtube.com/@HowtoPowerBIüdv
A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel
-
lanszelot
addikt
válasz Fferi50 #52722 üzenetére
Nagyon szépen köszönöm a választ.
Megpróbálom máshogy leírni:
Van rengeteg számom
Mindegyikkel pontosan ugyanazt a műveletet kell elvégezni: megszorozni A1 cella tartalmával.
Csak A1 cella tartalmát változtatom a beírás után.
Tehát minden cellában be kell írnom ugyanazt a képletet milliószor.
De az alap számokra nincs szükségem, csak zavaró tényező, ha ott van.Amit szeretnék: beírni a számokat és utólag ráhúzni a képletet, hogy ne kelljen annyit pötyögni.
Mint ha programoznál.
Ezekhez a cellákhoz add hozzá a szorozva A1 cellaval képletet.Értem, hogy be tudom zárni a sort, és nem látszik.
Azt is, hogy be tudom egyesével pötyögni.
Vagy a képleten ctr+c és ctrl+v , majd átírom a számot, de ez még mindig 90-es évek.
Egy ilyen alap funkció nincs az excelben?
Elkopik a billentyűm, és rengeteg időm megy el pötyögéssel.
Egyazon képletet ráhúzni egy számsorra.
Programkódban csinálok egy tömböt és minden elemét for ciklussal megszorzom egy változó ertékével.
Kész.
Itt is az kellene. Beírom a számokat, kijelölöm, és +A1*(aktuális cella tartalma). Háttérben excel egy for cikkussal megcsinalja.
Ez programozásban a legalja, semmi. Hogy hogy nem tették bele?
Órákat lehetne megspórolni.
"Add formula to the selected cells" - pl ilyen néven
Furának tartom, hogy nincs ilyen.Félre ne értsétek, nem ellenetek írok. Meg vagyok lepődve egy ilyen hiányosságon.
[ Szerkesztve ]
-
Fferi50
Topikgazda
válasz lanszelot #52725 üzenetére
Szia!
"De az alap számokra nincs szükségem, csak zavaró tényező, ha ott van."
És amikor megváltoztatod az A1 tartalmát, akkor honnan fogja tudni az Excel, hogy mit szorozzon meg vele? Hiszen az alap számok a szorzás után eltünnek! a leírásod szerint.
Szerintem még mindig 2 malomban őrölünk, ezért jó lenne ha példával és képpel ! illusztrálnád a problémádat: Kiindulási helyzet és elérni kívánt eredmény megmutatásával.
"Mint ha programoznál.
Ezekhez a cellákhoz add hozzá a szorozva A1 cellaval képletet."
Csakhogy más a programozás és más a képlet!!!
A makróban/programban megteheted, hogy egy cella értékét megváltoztatod - akár képlettel, akár konkrét átírással, írhatsz bele új képletet és visszaírod az adott cellába.
A munkalapon, képletben ilyen lehetőség NINCS, saját magára nem hivatkozhat a cellában levő képlet! Ez egy szabály, amit vagy elfogadsz és aszerint használod az Excelt vagy elfelejted és nem képletezel hanem programozol.
Ezért kell használni ilyen esetekben segédtartományokat (oszlopot v. sort), ahova bekerül az a képlet, amellyel az általad alap számoknak nevezett értékekre és az A1 cellára hivatkozunk. Az alap oszlop marad változatlan, a segédoszlop pedig a képletnek megfelelően változik.
A képletet pedig lehúzással, másolással (irányított beillesztés - képlet), sőt akár villámkitöltéssel is átírhatod.
Sajnos úgy látom, olyan funkciót próbálsz az Excellel képletben megoldani, ami nincs - bármennyire is furának és hiányosságnak tartod.
Vannak a rendszerben szabályok és azok szerint kell használnunk.
Üdv.[ Szerkesztve ]
-
föccer
nagyúr
válasz lanszelot #52725 üzenetére
1. munkalap
A1 cellába az ominózus szám2. munkalap
bármilyen tartományba az alap számok, amiket meg kell szoroznod, A1-től. Ide tetszőleges módon beviheted ezeket, bármilyen mennyiségben, csak legyen egy "maximum sor és oszlop"
3. munkalap. Ide jönnek az eredmények. A1 cellába =HA(Munkalap2!A1="";"";Munkalap2!A1*Munkalap1!$A$1)
Ezt a képletet 1x kell kiterjesztened az egész tartományra a 3. munkalapon és mindig a munkalap1 A1 cella értékével fogja kiszorozni a munkalap2-re betett adatokat. A munkalap3 pedig az eredményt fogja tartalmazni, ahonnan tetszőlegesen kimásolhatod.
A számolótáblát megcsinálni gyakorlatilag bárhány cellára kb 20 másodperc, utána bárháynszor használhatod, csak a munkalap1 és munkalap2 alapadatait kell változtatodnod.
Tök felesleges erre programot írni, meg makrózni. Ha minimálisan is rutinban vagy, tényleg 1 perc megcisnálni.
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
-
lanszelot
addikt
válasz föccer #52727 üzenetére
Először is köszönöm szépen a válaszokat
Rengeteg munkalap van, és az extra semmit sem erő munkalapok csak zavaró, mint a felesleges sorok.
Ha csak a gyereknek oldasz meg egy szöveges feladatot excel-el akkor tényleg felesleges a makro.
De amikor 100 munkalap, és minden munkalapon rengeteg szám, ahol ugyanazt a műveletet kell újra és újra és újra bevinni.
És ez nekem nem munka. Csak hobbi.
Mi van ha valaki dolgozik is vele?
Tehát ez 2024-ben édes kevés.
Hamarabb írok meg egy honlapot.Fferi50:
+A1*(aktuális cella tartalma) - jelentése;
Ahol C1 cella értéke 24
+A1*24 -re valtozik a cella értéke
Ahol D1 cella értéke 47
+A1*47 -re valtozik a cella értéke
Ahol E1 cella értéke 63
+A1*63 -ra valtozik a cella értéke
Stb -
Fferi50
Topikgazda
válasz lanszelot #52728 üzenetére
Szia!
"+A1*(aktuális cella tartalma) - jelentése;
Ahol C1 cella értéke 24
+A1*24 -re valtozik a cella értéke
Ahol D1 cella értéke 47
+A1*47 -re valtozik a cella értéke
Stb."
Erre kiváló az irányított beillesztés - szorzás =>ahogyan Delila írta az 52718#-ban. A tartományokat egyszerre is kijelölheted, összefüggőket egérrel simán, a külön-külön levőket egér és Ctrl -al.
DE: Ha változtatod az A1 értékét, akkor ismét meg kell csinálni ugyanezt. (Más kérdés, hogy honnan és hogyan kerül új érték a C1,D1 stb. cellákba előtte.)
Mivel nem írhatsz egy cellába értéket és képletet is egyszerre!!! Ha képlet volt és felülírod értékkel, a képleted elvész. EZ A SZABÁLY!
Az Excel annyit tud, amennyit itt leírtunk neked. Amit képlettel nem lehet megoldani, az makróval még megoldható.
Ennyi! Szerintem engedd el a problémát. Részemről elengedtem.
"Mi van ha valaki dolgozik is vele?"
Tudomásul veszi a rendszer korlátait vagy keres olyan rendszert/programot , amiben megoldható a feladat. Amit leírtál az egyébként nem életszerű, az alapadatokat általában mindenki szereti látni és megőrizni.
Üdv.
Ps. A semmit sem érő munkalapok/sorok teszik lehetővé, hogy megoldd a feladatot, ezek egyébként el is rejthetők a felhasználók elől.[ Szerkesztve ]
-
lanszelot
addikt
válasz Fferi50 #52729 üzenetére
A szabályoknak megfelelően írtam.
Igen, írja felül, azt akarom, de használja a benne lévő értéket a felülírásnál.
Ez nem korlát, ez hiányosság. Méghozzá óriási.Amit írtam nagyon életszerű. Ha egy 8 általános betanított munkás elé tolsz egy papírt ahol 2 számsor van, belegabalyodik.
Ha csak 2 számsor van, nincs mit kevernie.
Ha nyomtatasnál véletlen nem kapcsolod ki az alap számsort.... stb
Csak problémát okoz.
Hibát az alapoknál kell elhárítani.Hogyan tudom makróval megcsinálni?
-
föccer
nagyúr
válasz lanszelot #52728 üzenetére
Az excel egy program. Alapvetően egy keretrendszer, amin belül a program adta korlátok között azt csinálsz amit akarsz.
Alapadat - > algoritmus -> eredmény
Ez az excel működési alapelve. Amit te szeretnél, hogy az alapadtba visszatöltse neked az eredményt, ami viszont logikailag hibás és/vagy adatvesztéshet és/vagykörkörös hivatkozáshoz és a futásban stack overfow-ba esne.
Ahogy Fferi írta, amit szeretnél arra nincs felkészítve az excel. Nem véletlen. Ellenben meg lehet oldani sok máshogyan. Megoldásból megírtunk többet is. Néhány kattintás. Ha szeretnéd segítünk a makró felprogramozásában és akkor menni fog az is. Ehhez viszont kellene néhány konkrétum. Elnevezések, munkalap nevek, pontos cella pozíciók.
A leírtak alapján a makró megírása sem nagyon nagy feladat, még én is meg tudom csinálni 1-2 óra alatt
üdv, fg
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
-
föccer
nagyúr
válasz lanszelot #52732 üzenetére
Alapvetően egy objektum orientált visual basic-ként kell kezelni.
Makróbarátként kell menteni a munkafüzetet, bekapcsolni a fejlesztő eszközök menüt. A legegyszerűbb, ha kiraksz egy gombot, amihez a megírt makrót rendeled.
alt+F11 bill kombinációval hívod elő a VBA editort. Bal oldalt a modul-ba dupla katt és már lehet is írni a kódot.
Ha visszalapozol ott a fórumba, sok-sok megírt kódot látsz.
Minden makró sub - end sub kód közé kell rakni. 1 modulba mehet több sub is.
egy cella értékét a sheets("munkalap neve").range("cella hivatkozás").value objektumban éred el vagy a sheets("munkalap neve").cells(sor azonosító, oszlop azonosító).value objektumban.
Változó deklaráció a Dim változó név As tipus utasítással. Ciklusok mennek. For - Next fog neked kelleni. feltétel keelés simán If - then - else - end if kulcsokkal mennek.
Operátorok közül a megszokottak.
Érték adás klasszikusan jobbról balra végrhajtás van i = i+1. Ugyan ez megy a cella értékeinek a megadásával is működik.
sheets("munkalap1").range("A1").value =sheets("munkalap1").range("A1").value + 1
Ha programozásba otthon vagy, akkor ezzel nagyjából már menni is fog ennek a feladatnak am egoldása.
Ma készen vagy a makróval, akkor VBA mecsok, jobb klikk a gombon és makró hozzárendelése. Ott lesz a megírt sub neve. Kijelölöd, okézod és már kattinthatod is a gombot.
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
-
föccer
nagyúr
válasz föccer #52733 üzenetére
Ez alapján meg fogod tudni csinálni.
Sub Szorzas()
Dim Sor As Long
Dim Oszlop As Long
Dim S As String
Dim Szorzo As Double
S = "Munka2"
Szorzo = Sheets("Munka1").Range("A1").Value
For Sor = 1 To 20
For Oszlop = 1 To 20
Sheets(S).Cells(Sor, Oszlop).Value = Sheets(S).Cells(Sor, Oszlop).Value * Szorzo
Next
Next
End Sub
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
-
Fferi50
Topikgazda
-
lanszelot
addikt
válasz föccer #52733 üzenetére
Huhhh, nagyon szépen köszönöm mindenkinek a segítséget.
Nem hangzik bonyolultnak
Persze át kell rágnom magam rajta, de szerintem nem lesz gond.Fferi50: a link is nagyon jó, köszönöm szépen.
Így már rá is tudok keresni.Access -ben tudtam, hogy van programozás rész (nem csináltam, csak tudtam róla) , de excel-ről nem tudtam.
-
Delila_1
veterán
válasz lanszelot #52736 üzenetére
Ennyi az egész. Bekéred a szorzandó területet, amit vagy bepötyögsz, vagy egérrel kijelölöd, a többit elvégzi a makró. Hozzárendelheted egy gombhoz, ahogy már föccer is írta.
Ha állandó a terület, az inputbox helyett megadhatod direktben:Set Terulet = Range("A1:Z1")
Sub Szozas()
Dim Terulet As Range, CV As Object
Set Terulet = Application.InputBox(prompt:="Kérem a szorzandó tartományt", Type:=8)
For Each CV In Terulet
CV.Value = CV.Value * Cells(1, 1)
Next
End Sub
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
gycs02
tag
Sziasztok!
Kezdek belejönni, persze csak ha a gugli segít.
Ha nem akkor jönnek ide a kérdések.
Van egy fájl, aminek az egyik cellájában a =+CELLA("filename") képlet kiírja a megfelelő információkat. Betudom valahogy helyettesíteni ezen cella tartalmának alapján ezt az elérési utat: utvonal = "c:\Dokumentumok\1.xlsx". Több fájlom van, az utvonal fájlnevét eddig manuálisan átírtam, mikor másnéven mentettem. Azt szeretném, hogy a makróval elvégzendő parancsot mindig a megnyitott fájlon hajtsa végre. Remélem érthetően sikerült leírnom.
Még egy kérdés. néha előfordul, hogy olyan fájlra hivatkozom, amire az office feldobja, hogy néhány fájl vírust tartalmazhat.... , ez le lehet okézni valamilyen makró paranccsal?Köszi előre is!!!
-
Fferi50
Topikgazda
válasz gycs02 #52738 üzenetére
Szia!
Az éppen aktuális fájl teljes nevét az ActiveWorkbook.Fullname utasítással tudod elérni, ezt tárolhatod egy változóban is akár.
Az elérési utat a Path, a rövid nevet a Name tulajdoság adja vissza.
Amikor megnyitsz egy fájlt, akkor az lesz az aktív, tehát megnyitás után le tudod kérdezni a tulajdonságait. Nem kell a Cella függvény hozzá, de abból is megkaphatod az értéket:
Range("A1").TEXT utasítás a cellában ténylegesen megjelenő szöveget (nem a képletet!) adja vissza.
A makrók miatti figyelmeztetéseket szerintem úgy tudod elkerülni, ha engedélyezed a makrókat. Ezen felül vagy inkább ezzel együtt a fájlkezelőben a fájl nevén jobb egérgombbal kattintva, a tulajdonságot kiválasztva alul a Biztonság részben bepipálod a Tiltás felodása négyzetet.
Makróból szerintem az okézás nem megy.
Üdv. -
föccer
nagyúr
Sziasztok!
A lenti kóddal megjelenítek egy rejtett munkalapot, majd kérem a nyomtatási képet, hogy lehessen direkt nyomtatni.
Milyen néven találom meg azt a metódust, ami akkor fut le, ha a nyomtatási képet bezáródik (tehát ha a nyomatást vagy ha a bezárást választom, ígyis-úgy is szertném elrejteni az NyWs-t.
Köszönöm
Sub Nyomtat()
Dim NyWs As String
Sheets("Seged").Range("B1:D1").Calculate
NyWs = Sheets("Seged").Range("D1").Value
Sheets(NyWs).Visible = xlSheetVisible
Sheets(NyWs).PrintPreview False
End Sub
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
-
gycs02
tag
válasz Fferi50 #52739 üzenetére
Szia!
Köszönöm a választ!
Keresgettem az ajánlásod alapján, de sajnos nem jutottam előrébb. Nem vagyok képben a makró világában, csak amit megtalálok a neten azokat próbálom több-kevesebb sikerrel felhasználni, s minimálisan módosítgatni.
Ez így most működik:Dim utvonal As String
utvonal = "c:\Dokumentumok\01\1.xlsx"
On Error GoTo 1
ActiveWorkbook.FollowHyperlink utvonal, NewWindow:=True
Exit Sub
1: MsgBox Err.DescriptionHogy mi miért van benne nem tudom, egyedül az útvonal ami számomra mond valamit.
Az elérési út az alkönyvtár kivételével minden esetben ua, a fájlnév sem változik. Azt szeretném elérni, hogyha az a fájl ami a makrót futtatja a 01-es mappában van, akkor az abban lévő 1.xls-t nyissa meg, ha a 02-ben van, akkor az abban lévőt stb.
Lehet így érthetőbb is a kérdésem, ha megoldható kijavítanád ezek alapján?Az excel-ben az összes makró engedélyezve van, és pipálva a VBA projekt objektumok is.
Az a tiltás feloldása rész nálam nincs vagy nem jó helyen keresem vagy le van tiltva. [kép]Köszi gycs!
[ Szerkesztve ]
-
smallmer
őstag
Sziasztok!
Az alábbi feladat megoldásában szeretném kérni a segítségeteket.
Előzmények:
1. Adott egy excel lap ahol 5 oszlopban vannak tulajdonságok.
2. Az 5 oszlop közül az első egy azonosító.Feladat:
Egy másik excel sheeten csinálni egy mezőt amiből ki lehetne választani a másik sheeten lévő azonosítókat (keresni is lehessen rá begépeléssel). Ha kiválasztottam, akkor jelenjen meg minden adat ami az azonosítóhoz tartozik és lehessen felvenni új információt az azonosítóhoz, amit az excel szúrjon be az eredeti azonosítós táblázat végére egy oszlopba. Minden újabb tulajdonság egy új oszlop legyen.Remélem érthetően írtam le.
Láttok erre bármiféle megoldást?
Köszönöm szépen!
-
Fferi50
Topikgazda
válasz smallmer #52746 üzenetére
Szia!
Az 1. rész megoldható az alábbiak szerint:
A másik munkalapon a kereső cellába - Adatok - Érvényesítés - lista - kijelölöd az első munkalap első oszlopát.
Ezután mellette vagy alatta FKERES függvénnyel megkapod a hozzá tartozó további értékeket.
A 2. rész szerintem csak makróval oldható meg.
Üdv. -
föccer
nagyúr
válasz Fferi50 #52743 üzenetére
Végül sokkal egyszerűbb lett a megoldás. A kód részletedet nézve sejlett fel előttem, hogy a PrintPreview megjeleníti child form-ban az előnézeti képet, majd annak bejárása után folytatja a makró futását a következő sorban. Szóval csak simán kapott egy Sheets(NyWs).Visible = xlSheetHidden utasítást és jóccakát. Tökéletesen működik.
Építésztechnikus. Építőmérnök. Ingatlan adás-vétel vevő oldali támogatása. Mérnök tanácsadás, felújításhoz, átépítéshez. Excel feladatok megoldása. Lézergravírozás.
Új hozzászólás Aktív témák
- Dobozos PC Játékok jó áron eladók
- EREDETI - CHOICE - BUNDLE - STEAM KULCSOK - UPDATE!
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- AKCIÓ! - STEAM kulcsok / Aragami, Transformers, Oddworld, stb. - 2024.08.08.
- AMD Game Bundle: Warhammer 40,000: Space Marine 2 és Unknown 9: Awakening - kaparintsd meg már most!
Állásajánlatok
Cég: Ozeki Kft
Város: Debrecen
Cég: Ozeki Kft
Város: Debrecen