-
Fototrend
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
-
Mittu88
senior tag
válasz Fferi50 #32183 üzenetére
ActiveX verzérlőket használok. Munkalap vezérlőt még sose használtam, az ActiveX vezérlőben eddig mindent meg tudtam oldani.
Ribbonra fel tudom úgy tenni, hogy akármelyik gépen nyitják meg, ugyanott jelenjen meg?
Szívesen megismerném ezt a módszert is. Én délután 4 után nem leszek, holnaptól meg nyaralok vasárnapig. Írnál egy gyorstalpalót privátban (vagy akár itt, hátha másokat is érdekel)?
-
Mittu88
senior tag
válasz Fferi50 #32180 üzenetére
Az makrós fájlban jelenleg 220 sornyi adat van, kb 18 oszlop szélesen. Van még egy háttéradat munkalap, de azon jelentéktelen mennyiségű adat van.
A fájlszerveren lévő fájlban (amit megnyit a makró) 1200 sornyi adat van.
Amúgy úgy működik a rendszer, hogy a makrós fájlban rögzítik a gépekhez tartozó adatokat (termelés, műszaki hiba, stb.)
Ha mindegyik esemény (sor) lezárt, vagy törölt állapotú, akkor engedi bezárni a fájlt.
Ha bezárja, megnyitja a fájlszerveren lévő adatbázisfájlt, és oda feltölti azokat, amik még nem rögzítettek. Ezek a sorok utána a Rögzített oszlopba kapnak egy 1-es értéket.
Megpróbálhatom a kisebb munkalapra váltást, de a háttéradatos munkalap nagyon rejtettben van, úgyhogy max. beszúrok egy munka1-et.
-
Mittu88
senior tag
válasz Fferi50 #32177 üzenetére
Szia Feri!
Megpróbálom a chdir-t, és szólok, hogy javult-e a helyzet.
Amúgy szerintem nem a wb változóra írja, bár tény, hogy Nothing-on marad.
Találtam neten egy hasonló problémát: ITT
A srác nem Workbook változóra állítva nyitja meg a fájlt, és mégis jelentkezik nála a probléma NÉHA.
Ez az érthetetlen amúgy, hogy nálam is, elsőre hibára fut, de ha lelövöm a makrót hibára futás után, és utána be akarom zárni az excelt (workbook_close esemény hatására fut ez is), akkor simán lefut.
u.i.: szinte ugyanaz a hardver mindkét gépen. A szoftver meg teljesen ugyanaz.
[ Szerkesztve ]
-
Mittu88
senior tag
Sziasztok!
Van megint egy olyan problémám, amire még Stackoverflow-on se találok megoldást...
Van ez a kép:
Az én gépemen hiba nélkül lefut, a belső hálózatról megnyitja a Database.xlsx-et, a wb változó kap is nevet meg minden.
VISZONT: egy másik gépen hibára fut ( Type Mismatch '13' ). Azaz érdekes a jelenség. Megnyitja a fájlt, de dobja ezt a hibaüzenetet. Ezután rámegyek az End-re, vagy Debug-ra (aztán a négyzetre kattintva leállítom, lényegtelen), majd a következő futtatáskor lefut...
Számít az, hogy azon a gépen le van tiltva az internet, és csak hálózat van?
Más különbség nincs a gépek között. Talán még annyi, hogy ott lehet, hogy 32 bites a windows, nálam meg 64.
u.i.: a fájlszerveren az adott mappához mindenkinek van írási-olvasási joga.
[ Szerkesztve ]
-
Mittu88
senior tag
válasz Delila_1 #32140 üzenetére
A méretük nem változik, csak a helyük. A cég logoja ugrik be, és háttérképként viselkedik. Ha rányomnak ennek a munkalapnak a "nyomtatására", a kép beugrik az A1 cellába (oldalon belül marad), beállítja a makró az oldaltörést (ez nem működik), kiexportálja pdf-be a munkalapot (2 oldalasra kéne, úgy, hogy a sortörés az 54. és az 55. sor között legyen), aztán törli a kitöltött mezők adatait, a képeket elrakja a BD1 mezőbe (hogy ne legyen szem előtt kitöltéskor), végül e-mailt küld a célszemélyeknek.
[ Szerkesztve ]
-
Mittu88
senior tag
válasz Delila_1 #32138 üzenetére
Az aktív lapon, de a lap neve egy Worksheet változóba is el van mentve, szóval elég sokféle módon hivatkozhatok rá, de egyikkel se csinálja meg az oldaltörést. Két kép is van a munkalapon, amik valamennyire transzparensek, nem tudom számít-e, de próbáltam már nélkülük is beszúrni az oldaltörést, és egyszerűen nem csinálja meg.
Az lehetséges, hogy nem tudja összenyomni olyan picire, hogy egy oldal ráférjen, és ezért nem teszi be?
-
Mittu88
senior tag
válasz Delila_1 #32136 üzenetére
Ez így nem csinálja meg az oldaltörést:
ActiveWindow.View = xlPageBreakPreview
Application.PrintCommunication = False
Thisworkbook.Worksheets("GépbeállítóTÉR").Activate
ActiveWorkbook.Sheets("GépbeállítóTÉR").HPageBreaks.Add Before:=Range("A55") 'Nincs látszata
Set ActiveWorkbook.Sheets("GépbeállítóTÉR").HPageBreaks(1).Location = Range("A55") 'Subscrypt out of range hibaImmediate ablakban a ?ActiveWorkbook.Sheets("GépbeállítóTÉR").HPageBreaks.Count eredménye 0 az Add parancs lefutása után is!
Fferi50: nem hiszem, hogy parancsot írtam el, csak trehány módon írtam le. Bocs
[ Szerkesztve ]
-
Mittu88
senior tag
válasz lenkei83 #32126 üzenetére
Na igen, de valamiért nem teszi be az oldaltörést.
Arra a kódra, hogy
Thisworkbook.Worksheets("mlapnév").HpageBreak.Add "Adott cella"
nem csinál semmit, a
Thisworkbook.worksheets("mlapnév").HpageBreak(1).Location "Adott cella"
meg Subscrypt out of range hibára fut.Hogy tudok oldaltörést beszúrni egy adott sor fölé, hogy ne dobjon hibaüzenetet?
[ Szerkesztve ]
-
Mittu88
senior tag
-
Mittu88
senior tag
Sziasztok!
Valaki legyen kedves ezt elmagyarázni nekem: https://support.microsoft.com/hu-hu/kb/210663
Egyszerűen nem értem, de pont erre a hibára kéne megoldás.
-
Mittu88
senior tag
válasz adamssss #32037 üzenetére
3 éve excelezem, de már az első év után alap volt, hogy ha egy képlet másolásakor nem számol, ellenőrzöm az automatikus számolás funkciót. Máskor ne írd le, hogy milyen múltad van, mert félrevezető lehet. Tesla93 fórumtárs is félve kérdezett rá, hogy nem-e egy alap dolog miatt van gondod.
Bocs, csak "kitört" belőlem.
-
Mittu88
senior tag
válasz w.miki #31978 üzenetére
DARABHATÖBB függvényt használj, és a kritériumtartomány az adott oszlop (pl, G:G), a kritérium meg a név (pl. "Béla").
Így néz ki teljesben a képlet:
=DARABHATÖBB(G:G;"Béla")+DARABHATÖBB(G:G;"Tibi")+DARABHATÖBB(G:G;"Zoli")Ez összeszámolja, hogy a G oszlopban hány Béla, Tibi és Zoli van összesen.
-
Mittu88
senior tag
Sziasztok!
A következő problémám van:
Egy egyszerű makrót futtatok, ami a C:\ helyre készít egy PDF fájlt.
A probléma, hogy ha a nyomtatás munkalapról gombnyomással indítom a makrót, a PDF-be nem teszi bele az oldaltörést.
Ha F8-cal indítom és lépésenként megyek végig rajta, akkor viszont szépen megcsinálja, ahogy kell.
Mitől lehet ez és hogy lehet kijavítani?
-
Mittu88
senior tag
válasz Salex1 #30773 üzenetére
Kell a Set szó elé. Set Wb=Workbooks.Open(Filename:="K:\példa.xls")
Elfelejtettem írni, hogy zárójel kell.Module1-be úgy tudod átvinni, ha Module1-ben deklarálod a változót, pl Public teksztbokszertek as String, majd Munka1-en Private Sub textbox_Exit(ByVal cancel As MSForms.ReturnBoolean) eseménybe beírod, hogy teksztbokszertek = textbox.value (ha elhagyod a textbox-ot, akkor kap értéket a változó)
De írhatod a Private Sub textbox_Change() eseménybe is (ekkor minden karakterváltozáskor lefut az értékadás a változónak). -
Mittu88
senior tag
-
Mittu88
senior tag
válasz huliganboy #30660 üzenetére
Szóval bemásolod az adott oszlopok tartalmát az eddigiek alá. Ezután jelöld ki az összes adatot, majd kattints az Adatok fülön az Adateszközök szekcióban az Ismétlődések eltávolítására. Ott ki kell választani, hogy mely oszlopoknál vizsgálja az egyezőséget, meg hogy fejlécet tartalmaz-e az adattábla, aztán mehet.
Bocs, ha túl részletesen írtam le, nem tudom mennyire ismered az excelt.
-
Mittu88
senior tag
válasz huliganboy #30658 üzenetére
Nem néztem meg a mintafájlt, de elméletben, ha bemásolod az új adatokat a régiek alá, és nyomsz egy Ismétlődések eltávolítása-t, akkor törli a redundáns sorokat úgy, hogy a legfelül lévő megmarad. Így ergo a formázott/megjegyzéses sorod megmarad.
-
Mittu88
senior tag
válasz Mittu88 #30654 üzenetére
Sikerült!
Az Application.OnTime Now, "nyitas" parancsot a workbook.open eseménybe tettem, ezután hívtam meg az eljárást.
Így most annyi a gond "csak", hogy ha nincs ott az On Error Resume Next parancs az eljáráson belül, aWorkbooks(fajlnev2).Saved = True
Workbooks(fajlnev2).Closeparancsokra Subscript out of range hibát dob. Szerintem valamitől az X fájl (FinoMin.xlsm) bezáródik, így ezek a parancsok nem tudnak lefutni. Mindegy, bent hagytam, bár nem értem a dolgot.
-
Mittu88
senior tag
válasz Fferi50 #30649 üzenetére
Szia Feri!
Próbáltam az open eseménybe, logikus is, de ha makróval nyitok egy fájlt, nem fut le az open esemény (vagy legalábbis úgy vettem észre, hogy nálam nem futott le). Ezt most reggel még egyszer megnézem azért.
2010-es Professionalról van szó, magyar nyelvű.A külön fájlos megoldás azért nem jó, mert ilyen megoldás már van, és a kollegáknak nem tetszik, hogy időközönként szólok nekik, hogy futtassák, és kettővel többet kell kattintaniuk a kelleténél.
Viszont még tegnap délután találtam egy ilyen megoldást:
Public Sub nyitas()
Dim fajlnev2 As String
Dim idozito As Double
On Error Resume Next
Application.Visible = True
fajlnev2 = "FinoMin.xlsm" 'C:\Documents and Settings\" & Environ("username") & "\Desktop\
Application.OnTime Now, "nyitas"
Workbooks(fajlnev2).Saved = True
Workbooks(fajlnev2).Close
FileCopy "\\srv01v\Database$\FinoMin\FinoMin.xlsm", "C:\Documents and Settings\" & Environ("username") & "\Desktop\FinoMin.xlsm"
FileCopy "\\srv01v\Database$\FinoMin\FinoMin.xlsm", "C:\Documents and Settings\" & Environ("username") & "\Asztal\FinoMin.xlsm"
Workbooks("ujverzio.xlsm").Save
Workbooks("ujverzio.xlsm").Close
End SubEz alapján a leírás alapján csináltam: I've had good luck using Application.OnTime to disconnect a macro from its caller. For example, assume the code below is in Book2.xlsm and that a Book1.xlsm ran code that opened this Book2. Now we want code on Book2 to close Book1 via its Sub CloseBook1 and continue running.
Called indirectly by Ontime that happens wheras called directly Book1 does close but then Book2 code stops.
Private Sub Workbook_Open()
''Breaks link to workbook/macro that opening this workbook:
Application.OnTime Now, "CloseBook1"''Doesn't""
CloseBook1
End SubJim
A frissítést meg is csinálja, viszont Y (ujverzio.xlsm) bezárásakor mintha végtelen ciklusba menne, nem tudja bezárni magát, és pár másodperc után Ismeretlen hibával lefagy az excel. Gondolom erről beszéltél, hogy tud problémát csinálni az ilyen makró.
Ebből kiindulva nem tudsz esetleg egy megoldást?
-
Mittu88
senior tag
Sziasztok!
Egy olyan, fájlokon átívelő makrót szeretnék írni, amivel frissíteni lehet az eredetileg indított fájlt (excelt).
Ez úgy működne, hogy megnyitom X fájlt. Ez érzékeli, hogy a szerveren egy rejtett mappában van-e olyan nevű fájl, mint ami az X fájl verziója. Ha nincs, akkor megnyitja Y fájlt, ami bezárja X fájlt, lemásolja a szerverről az X új verzióját, majd bezárja önmagát (Y fájlt), esetleg elindja X új verzióját az asztalról.Eddig ennyire jutottam: A FinoMin.xlsm az X fájl, az ujverzio.xlsm az Y fájl
X fájl ide vágó makrója
Private Sub UserForm_Activate() 'Login userform automatikusan indul a fájl megnyitásakor
On Error Resume Next
Application.ScreenUpdating = False
nincsujverzio = True 'Ha nincs új verzió, igaz, ha van, hamis.
Call Verzio
If nincsujverzio = False Then
MsgBox "Van új verzió!", vbOKOnly
Workbooks.Open "\\srv01v\database$\FinoMin\ujverzio.xlsm"
Application.Run "'ujverzio.xlsm'!nyitas"
End If
End sub
Private Sub Verzio()
Dim verziofajlnev As Variant
verziofajlnev = Dir("\\srv01v\Database$\FinoMin\")
While (verziofajlnev <> "")
If InStr(verziofajlnev, Login.verziolabel.Caption) > 0 Then 'A Login egy űrlap, aminek az egyik labeljén van a verziószám
nincsujverzio = True
Exit Sub
End If
verziofajlnev = Dir
nincsujverzio = False
Wend
End SubAz ujverzio.xlsm (Y fájl) makrója pedig külön modulban a nyitas, ami igy néz ki:
Public Sub nyitas()
Dim fajlnev2 As String
Dim idozito As Double
On Error Resume Next
Application.Visible = True
fajlnev2 = "FinoMin.xlsm"
Workbooks(fajlnev2).Saved = True
Workbooks(fajlnev2).Close 'Eddig jól működik, itt áll meg
FileCopy "\\srv01v\Database$\FinoMin\FinoMin.xlsm", "C:\Documents and Settings\" & Environ("username") & "\Desktop\FinoMin.xlsm"
FileCopy "\\srv01v\Database$\FinoMin\FinoMin.xlsm", "C:\Documents and Settings\" & Environ("username") & "\Asztal\FinoMin.xlsm"
Thisworkbook.Save
Thisworkbook.Close
End SubA probléma, hogy amikor fut a kód, a Workbooks(fajlnev2).Close résznél leáll az egész, mivel az eredeti fájl bezárul. Így pont a lényeg, az utána következő másolási folyamat marad ki, ergo nem frissül a fájl az asztalon.
Légyszi segítsetek, azt se tudom, hogy hogy keressek rá az ilyen problémára fórumokon. -
Mittu88
senior tag
Sziasztok!
Találtam egy szoftvert, amivel futtatható állománnyá lehet varázsolni a makrókat tartalmazó exceleket.
Namost a probléma, hogy kicsit túlárazott, és sehol nem találok neten ingyenes letöltést. A neve amúgy DoneEx XCell Compiler.
Ami miatt szükség van erre, hogy a cégnél több olyan excelt is használunk, ami UserFormokat használ, egyszerre viszont csak egy tud futni.
Kipróbáltam ennek az XCell-nek a trial verzióját, és nagyon frankón megcsinálja, akármennyi futtatható egyszerre. Érdekes amúgy, mert exe fájlt csinál, de megnyitáskor használja az excelt, amíg nyitva van a fájl.
Nem tudtok esetleg hasonló megoldást ilyen feladatra?
-
Mittu88
senior tag
Sziasztok!
Outlook VBA-t még sose programoztam, de az megoldható valahogy, hogy ha levelet kapok és van csatolmánya, akkor azt automatikusan a levél érkeztetésekor adott helyre lementse? (nem zipben, hanem eredeti fájlformátumban)
-
Mittu88
senior tag
Azt meg lehet csinálni, hogy az alábbi gantt diagramon az azonos adatok az Y tengelyen azonos sorban legyenek?
-
Mittu88
senior tag
válasz Delila_1 #28261 üzenetére
Nem bírtam ki, bent maradtam túlórában kipróbálni.
Ennyit csináltam:On Error Goto 0
fnev = ....
Hiba:
Set wb1 = Workbooks.Open(Filename:=fnev)
If VarType(wb1) = vbError Then
MsgBox "Az adatbázis pillanatnyilag használatban van, OK-ra kattintva újra próbálkozom a megnyitásával.", vbOKOnly, "Hiba!"
GoTo Hiba:
End IfÉs ugyanúgy hibát dob. Mondjuk nem az adatfájlt nyitottam meg, hanem az asztalra másoltam és a másolatot nyitottam meg (de fájlnév egyezőség miatt ilyenkor is hibára fut, most meg ugye ez volt a cél).
Szerk.: annyit próbáltam még, hogy átírtam On Error Resume Next-re, akkor feldobja a hibaüzenetet, de nem próbálkozik újból az Ok gombra kattintva.
[ Szerkesztve ]
-
Mittu88
senior tag
válasz coldfirexx #28251 üzenetére
Azt próbáld még ki, hogy a Dim j as integer sor alá beírod: application.screenupdating = false
Amúgy nem lehetne lassabb, nem értem a dolgot.Azt írd majd meg légyszi, hogy gyorsult-e ettől a parancstól. Köszi!
-
Mittu88
senior tag
válasz coldfirexx #28249 üzenetére
Sub adattorles()
Dim i as integer
Dim j as integerWorksheets("Alapadatok").Activate
j = 0
i = 0
Do
i = i + 1
If Cells(i, 31).value = "A szerződés előző évben lejárt" then 'A 31 az AE oszlop száma
Cells(i, 31).entirerow.delete
i = i-1
j = j + 1
End if
Loop until Cells(i, 1).value = "" 'Addig megy az első oszlopon végig, amíg nem talál üres cellátMsgbox "A művelet sikeresen lefutott, " & j & " sor került eltávolításra", vbokonly
End sub
-
Mittu88
senior tag
válasz coldfirexx #28244 üzenetére
Ha van egy olyan sorod, amiben végig vannak adatok, akkor a következőt csináld a For ciklus helyett:
i = 0
Do
i = i + 1
If Cells(i, 31).value = "A szerződés előző évben lejárt" then 'A 31 az AE oszlop száma
Cells(i, 31).entirerow.delete
i = i-1
End if
Loop until Cells(i, végigtöltöttsor sorszáma).value = "" 'Addig megy, amíg nem talál üres cellátAmúgy a CountIf függvény lassítja nagyon, nincs rá szükség. Simán a cella értékét (value) vizsgáld.
[ Szerkesztve ]
-
Mittu88
senior tag
Sziasztok!
VBA-ban szeretnék egy hibakezelő modult létrehozni, ami azt csinálja, hogy hiba esetén
vár egy másodpercetdob egy hibaüzenetet, amit leokézva, majdújra próbálkozik attól a sortól, amelyiken a hiba előfordult.Erre azért van szükség, mert van egy makró, amivel sokan dolgoznak, és bezáráskor (illetve egy pár művelet során) megnyit egy szerveren lévő fájlt egy pillanatra, amíg a saját adatait beletölti.
A probléma, hogy néha egyszerre lépnek ki a makrós fájlból, így egy megnyitott fájlt akar megnyitni és szerkeszteni, ami hibára futtatja.Alapból ez a makrós fájl formokból áll csak, tehát cellába nem is tudnak írni (célszerűbb lett volna amúgy futtatható állományt csinálnom sima VB-ben, de ahhoz nem értek), mert induláskor felugrik az első form. Ez változtat valamit a hibakezelésen?
[ Szerkesztve ]
-
Mittu88
senior tag
Sziasztok!
Egyszerűen nem találok google-ben választ az alábbi problémámra.
Egy adott munkafüzet adott munkalapján lévő adatokat szeretném egy másik munkafüzet adott munkalapjára beilleszteni úgy, hogy az ottani adatokhoz hozzáfűzze.
Ehhez a területet változókkal kell kijelölnöm ugyebár. A következőig jutottam:Workbooks(1).Worksheets(1).Activate
i = 0
Do
i = i + 1
Loop Until Cells(i, 1).Value = ""
If i <> 1 Then
i = i - 1
Range("A1", Cells(i, 12)).Copy ' Itt lehet a gond, elvileg a Range-en belüli Cells parancs nem tetszik neki. Próbáltam a Range(Cells(1, 1), Cells( i, 12))-t is.
Workbooks(2).Open Filename:= xxxxxxxx
Workbooks(2).Worksheets(2).Activate
i = 0
Do
i = i + 1
Loop Until Cells(i, 1).Value = ""
Cells(i, 1).Select
ActiveSheet.Paste
Workbooks(2).save
Workbooks(2).close
End IfMi lehet a gond?
[ Szerkesztve ]
-
Mittu88
senior tag
válasz Fferi50 #24443 üzenetére
Szia Fferi!
String mindkét változó, annál nincs gond (ugyan a nevében raktarszam, de string az is).
Amúgy azért kell errorhandler, mert több parancs is van ott, csak feleslegesnek tartottam leírni.
A probléma az volt, hogy a GoTo hibautan helyett Resume hibautan kellett.Köszönöm szépen a segítséget, hatttalmas riszpekt
-
Mittu88
senior tag
sziasztok!
Ebben segítsetek légyszi. A gondom, hogy az alábbi programkód után egyszer ugyan visszaugrik a hibaután: labelhez, de ha még egyszer hibát tapasztal, kifagy a program. Amúgy a munkalapnev változónak való értékadás után akad ki, mert sok esetben #HIÁNYZIK hibát dobna az fkeres függvény. Sajnos azt nem tudom kivédeni.
On Error GoTo hibavan
For sorszam = 2 To osszsorszam
hibautan:
Sheets(masodikadatbazis).Select
raktarszam = Cells(sorszam, 2).Value
munkalapnev = Application.WorksheetFunction.VLookup(raktarszam, Sheets("Raktárak").Range("$M$2:$N$90"), 2, False)
raktarszam = munkalapnev
...
Nexthibavan:
sorszam = sorszam + 1
GoTo hibautanHogy tudom megoldani, hogy az összes hiba esetén a hibavan:-ra ugorjon és ne akadjon ki?
-
Mittu88
senior tag
Sziasztok!
Egy tök egyszerű dologgal szívok. Egy xls fájlból szeretnék egy tartományt (C2640) átmásolni egy xlsx fájlba adott munkalapra úgy, hogy a kezdő cellát adom meg Range(Cells(sorokszama, 3))
Hogy a fenébe lehet?
-
Mittu88
senior tag
-
Mittu88
senior tag
Lehet úgy hivatkozni munkalapra, hogy egy cella értéke a munkalapnév?
Pl. ha A1 értéke Január, akkor tudok valahogy azon keresztül a Január munkalapra hivatkozni? -
Mittu88
senior tag
válasz Fire/SOUL/CD #23942 üzenetére
Elvileg nem lehetne gond, most próbáltam egy másik 2007-es office-os gépen, teljesen szépen lefutott.
Olyan bonyolult parancsokat se használok, ami csak a 2010-esben van. Tök alap dolgok. -
Mittu88
senior tag
Ilyet még nem láttam. Egyik kolléga gépén 2007-es magyar office van és az excel automatikusan letiltja a szerveren lévő 2010-es excelben készült makrós fájl makróját.
A "poén", hogy ha 2010-es excelben megnyitom a fájlt és elmentem, akkor a következő megnyitással működik a 2007-esben. A többiben viszont nem, tehát mindig meg kéne nyitnom 2010-essel és bezárnom, hogy utána 2007-esben jól működjön.
Minden be van állítva, minden makró engedélyezése, minden active x engedélyezése, megbízható helyek között a szerveren lévő mappa almappákkal együtt, stb.
Mi lehet ez? -
Mittu88
senior tag
válasz repvez #23873 üzenetére
Szerintem egyszerűbb, ha egy másik munkalapon megvannak az adatok.
Írd be A1-be, hogy 100000. Utána menüszalagon Kezdőlap\Szerkesztés\Kitöltés\Sorozatok...
Ezen belül Számtani, Lépésköz: 100 Végérték 1000000.
Ha ezzel megvan, mellé B1-be egy képlet: =A1*0,67 C1-be meg: A1*0,74
Aztán behivatkozod diagramba.Így jó?
-
Mittu88
senior tag
válasz littleNorbi #23863 üzenetére
részvétem :/
-
Mittu88
senior tag
válasz littleNorbi #23838 üzenetére
Ez sajnos hatalmas szívás :/
Hány tétel van nagyjából, amit javítani kell? Nem tudsz gyorsan végigfutni rajta szemmel? -
Mittu88
senior tag
válasz littleNorbi #23836 üzenetére
Erre szokta az IT-s kollégám mondani, hogy rendszertelenségre nem lehet rendszert fejleszteni. Amivel részben egyet is értek. Szerintem lehet, csak feleslegesen erőforrás-igényes. Ebbe is bele lehet egyesével programozni, hogy milyen karaktert minek kell követnie, hogy egy adott módon értelmezze a program, de egyszerűbb lett volna úgy bekérni az adatokat, hogy Irányítószám; Település; Utca/Tér stb. megnevezése; Utca/tér stb. fajtája; Házszám; Emelet; Ajtó.
Bocsi, tudom nem segítek ezzel a kommenttel, de szerintem a többiek se fognak minden egyes ilyen egyedi esetre leprogramozni neked egy megoldást. -
Mittu88
senior tag
válasz littleNorbi #23833 üzenetére
Module-ba tetted a programkódot?
-
Mittu88
senior tag
Sziasztok!
Makróval hogy lehet megoldani, hogy ha több cellát jelölünk ki, akkor kijelölés után a kijelölt tartomány első cellájára ugorjon a kijelölés egyből. A workbook_selectionchange eseménybe kellene írni valamit, de eddig jutott a tudomány.
-
Mittu88
senior tag
Ha excelben létrehoztam egy active-x nyomógombot, amihez makrót rendeltem, azt ki lehet rakni mondjuk asztalra? Vagy valahogy lehet ikont létrehozni, ami egy adott fájlban makrót futtat?
-
Mittu88
senior tag
válasz m.zmrzlina #23554 üzenetére
Az fog is változni, de nem az a problémád, hogy volt, amelyiknek nem volt kezdőértéke még?
-
Mittu88
senior tag
válasz m.zmrzlina #23552 üzenetére
Modul-on belül deklarálod Sub-on kívül, aztán csinálsz egy Sub-ot, amiben értéket adsz mindegyiknek.
workbook_open-be meg beírod a sub nevét.pl.:
Module-ban:Public pelda as integer
Public peldaketto as stringSub Ertekadas()
pelda = 12345
peldaketto = "egykettoharomnegyot"End Sub
ThisWorkBook-ban meg:
Private Sub Workbook_Open()Ertekadas
End Sub
Bocsi, ha nem elég érthető, szaknyelvben nem vagyok jó (még)
-
Mittu88
senior tag
válasz m.zmrzlina #23546 üzenetére
Az esetleg nem lenne elegánsabb, ha csinálnál a module-ban egy eljárást, ami csak értéket ad a public változóknak, az eljárást pedig a Workbook_Open eseménynél meghívod?
Ergo fájl megnyitásakor kapna mindegyik public változó értéket és utána már használhatnád. -
Mittu88
senior tag
Azt hogy lehet megcsinálni, hogy Accessbe becsatolva egy xlsx fájlt a számot ne DUPLA típusúnak állítsa be adott oszlopban, hanem HOSSZÚ EGÉSZ-nek?
Sajnos az "Adatforrás csatolása csatolt tábla létrehozásával" menüpontra kell mennem, hogy mindig frissítsen megnyitáskor, de így nem tudom beállítani, hogy melyik oszlopot minek ismerje fel. Utána tervező nézetben meg nem engedi menteni a módosításokat. -
Mittu88
senior tag
Úgy érted több munkalappal van egy táblázatod, és munkalaponként vannak a partnerek?
Ha igen, minden munkalapon ugyanabban a cellában található(ak) ez(ek) az adatok?
Szerk.: mivel külön munkalapon, vagy munkafüzetben vannak az adatok, szerintem egyszerűen nem lehet megoldani (bár ez relatív). Makró kell. Ahhoz értesz picit?
[ Szerkesztve ]
-
-
Mittu88
senior tag
válasz Delila_1 #23463 üzenetére
Hogy kell úgy változót deklarálni, hogy mindenhol ugyanaz legyen?
ThisWorkbook-on deklaráltam egy 'valtozotte' nevű boolean változót úgy, hogy Public valtozotte as Boolean, de a Worksheet eseményeinél azt írja, hogy nincs deklarálva <Expression not defined in this context>
Ha nem Public-kal kell, akkor hogy?szerk.: Bocsi, véletlenül a válaszol-ra nyomtam.
[ Szerkesztve ]
-
Mittu88
senior tag
válasz Mittu88 #23458 üzenetére
Hátha érdekel másokat is:
Ha a cella képletet tartalmaz ( = jellel kezdődik), enterre a sorrend: Calculate -> Change -> Selectionchange.
Ha csak beírunk valamit, NINCS Calculate.
Ha van érvényesítés és rossz értéket írunk be, annyiszor lefut a Change esemény, ahányszor módosítani akartuk a cella értékét. -
Mittu88
senior tag
válasz m.zmrzlina #23433 üzenetére
Köszönöm szépen, Fferi-nek is
Viszont felmerült egy másik probléma:
Van egy ilyen kódom:
Public sor As Integer
...
Private Sub Worksheet_Change(ByVal Target As Range)
sor = Target.Row
...
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim nev As String
...
nev = Cells(sor, 1).Value
...És erre azt a hibaüzenetet dobja, hogy Application-defined or object-defined error.
A sor változó értéke 0, tehát nyilván nem tudja a nev változónak egy nem létező cella értékét adni. De mitől 0 a sor értéke?
Próbáltam a sor = ActiveCell.Row parancsot is, de ugyanez van. -
Mittu88
senior tag
Azt hogy lehet megcsinálni, hogy ha ráállok egy cellára, egy változó eltárolja az értékét, és ha megváltoztatják, egy másik változó eltárolja az új értékét?
A SelectionChange-be meg tudtam oldani, hogy a régit tárolja egy globális változó, a Worksheet_Calculate-be meg az újat akartam, de ha ENTER-rel vagy TAB-bal változtatják meg a cella értékét, akkor annak a cellának az értékét tárolja, amelyikRE ugrott enter-rel vagy tab-bal.
-
Mittu88
senior tag