-
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
-
ROBOTER
addikt
válasz
Fferi50 #43313 üzenetére
Pferi50 és Delila_1: Köszönöm, összeraktam a segítségetekkel. Csináltam egy próbát, egyik lapon a lista, másikon az érvényesített cella, ami nem zárolt, de a lapot levédtem, és automatikusan bővül a lista
Pferi50:
ACOUNTA(AUX2!$A$2:$A$1000)
-t kicseréltemCOUNTA(AUX2!$A:$A)-1
-re. Próba szerint hibátlan.Ide kapcsolódik: Ha makróból definiálok egy nevet, feltételezem az a füzet bezárása és visszatöltésa után újra élni fog. Érdemes az újratöltéskor törölni, vagy ha már létezik a név, úgyis felülírja?
-
lappy
őstag
válasz
Fferi50 #43315 üzenetére
Igen a generált szám fog látszani a cellában. véletlen.között függvénnyel generálok közvetlen a cellában 1-9 egy számot az egyik oszlopban a másik oszlopban a 0,01-1000000 ig és a harmadik oszlopban is a megadott számokkal.
Ez valójában 4 oszlop az egyikben a színek vannak a másik háromban pedig a számok. Ha a második oszlopból generálok egy számot akkor a hozzá tartozó színű lesz a cella. És így tovább a harmadik-első és a negyedik-első oszlopok között.ezt hol találom? "számértéktől függően add meg a formázás színét mind a 10 számra"
-
ROBOTER
addikt
válasz
Fferi50 #43303 üzenetére
Köszi!
Kipróbáltam, de valami mással van a baj.
Érvényesíteni próbálok egy cellában, lista hozzáadásával. És csak ezt nem engedi.
A cella nem zárolt. Kézzel enged hozzányúlni.s = "=AUX2!$A$2:$A$" + CStr(rowCount)
With Range("PARTNER").Cells(Target.Row, 1)
.Interior.Color = RGB(0, 200, 0) 'csak próba, működik
End With
With Range("PARTNER").Cells(Target.Row, 1).Validation
.Delete
' a következő sorra hibát ad:
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=s
End With
De makróból csak akkor engedi a validationt állítani, ha unprotected a sheet. Viszont engedi átszínezni vagy hasonlót.
Ha beteszem a fenti kód elé, hogy
ActiveSheet.Unprotect...
akkor megy, és jól megy. Megcsinálhatom, hogy minden makró elejére és végére beteszek 1-1 protect/unprotectedet, de nem túl elegáns. -
Delila_1
veterán
válasz
Fferi50 #43303 üzenetére
Nem szűnik meg a füzet bezárása után sem a lap védettsége.
Ha eredetileg nem volt védve a lap, aSheets(x).Protect Password:="Jelszó" , UserInterfaceOnly:=True
sor akkor is védetté teszi.
Védelemnél azt is be szoktam állítani, hogy a zárolt cellákat ne lehessen kijelölni.Sheets(x).EnableSelection = xlNoSelection
-
-
ROBOTER
addikt
válasz
Fferi50 #43290 üzenetére
Na jó, de nem a VBA hivatkozással van baj.
Az működik, egyébként nem írná be a cellába. De beírja a kívánt helyre, ezzel nincs baj.De mit írjon be? Hogy kell képletben (nem VBA-ban) hivatkozni egy nevet kapott oszlopra? Pontosabban annak cellájára? Hogyan tudom azt mondani, hogy =újoszlopnév2 vagy =újoszlopnév$2 ?
-
ROBOTER
addikt
válasz
Fferi50 #43288 üzenetére
Írok példát:
ActiveWorkbook.Names.Add Name:="névA", RefersTo:="=$A:$A'
ActiveWorkbook.Names.Add Name:="névB", RefersTo:="=$B:$B'
ActiveWorkbook.Names.Add Name:="névC", RefersTo:="=$C:$C'
Ez most működik, ha az oszlopra kattintok, a név mezőben megjelenik az általam adott név.
majd más subban:
Range("névC").Cells(adottsor, 1).Value = "=névA*névB"
Ez nem ad hibát, a képletet beírja. Csak "#KIBONTÁS" jelenik meg eredmény helyett.
Odaírnám én a "névA" és "névB" után, hogy $1...X, de nem fogadja el.De ismétlem, lehet az egész kínlódásom hibás, mert ha van egyszerűbb mód a kód rugalmassá tételére, akkor felesleges elnevezésekkel bajlódni. Csak most kezdtem a VBA-t.
-
ROBOTER
addikt
válasz
Fferi50 #43285 üzenetére
Köszi, az átnevezés így működik
A képlet viszont még nem.
Ugyanez a képlet simán megy kézzel beírva, ha kézzel hozom létre a neveket.Szerk:
Bocs, valamit nem vettem észre. Ha kézzel beírom a képletet az oszlop első cellájába, nem csak az első cella, hanem az egész oszlop felveszi az értéket.Azt hiszem vissza kellene térnem az alapkérdéshez: ha nem akarok fix koordinátákra hivatkozni, hanem fel akarom készíteni a kódot a táblázat változásaira, a névadás a jó módszer?
-
ROBOTER
addikt
válasz
Fferi50 #43262 üzenetére
Az dinamikusan létrehozott laphoz tartozó eseménykezelőt leredukáltam 2 sorra (SUB-END SUB). A hiba így is fennáll:
Sub writeCode(sheetCodename As String)
'új laphoz rendelt eseménykezelő létrehozása programkód dinamikus beírásával
Dim c As Long
'nem a munkalap szimbolikus nevére, hanem a kódnevére van szükségünk, ezért a sheetCodename ezt tartalmazza
c = Application.VBE.ActiveVBProject.VBComponents(sheetCodename).CodeModule.CountOfLines
' maga a kód egy stringben tárolva
myCode = ""
myCode = myCode & vbLf & "Private Sub Worksheet_Change(ByVal Target As Range)"
myCode = myCode & vbLf & "End Sub"
'programkód beírása a forráskódba, amely az új munkafüzethez tartozik
With Application.VBE.ActiveVBProject.VBComponents(sheetCodename).CodeModule
.InsertLines c + 1, "'dinamukusan létrehozott programkód"
.AddFromString myCode
End With
End Sub
Ha nem hívom meg ezt a Sub-ot, a hiba megszűnik.
-
ROBOTER
addikt
válasz
Fferi50 #43256 üzenetére
Szia!
Biztos valami faék hiba lesz, mert ennyire hülye nem lehetek, de nem jövök rá.
Nincs
Option Explicit
utasításModule1:
Public newSheetNamePos As String
Public defaultSheetName As String
Sub MyStart()
defaultSheetName = "ÚJ NÉV"
newSheetNamePos = "$B$11"
Worksheets("START").Range(newSheetNamePos).Value = defaultSheetName
...
...
Thisworkbook:
Private Sub Workbook_Open()
Module1.MyStart
End Sub
START:
Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox Target.Offset.Address & " ---- " & newSheetNamePos
If Target.Offset.Address = newSheetNamePos Then
newSheet
End If
End Sub
A Change, amikor megnyitás után először hívódik, mert változás történik a START lapon, a feltétel két oldala azonos, ellenőrzésképpen van benne az MsgBox, és ugyanaz van a két oldalon, tökéletesen működik. Amikor új változás van a START lapon, és újra hívódik a Sub, a newSheetNamePos üres. A szó sehol nem szerepel más helyen a kódban.
-
-
válasz
Fferi50 #43131 üzenetére
Szia!
Köszönöm szépen!
Így tényleg kinyomtat minden oldalt. Nekem valamiért a saját kódommal csak az elsőt nyomta ki
Egy kicsit módosítottam a kódod, hogy én adhassam meg hova és milyen néven mentsen.
Beteszem ide, hátha valakinek a későbbiekben szüksége lesz erre a verzióra.Sub nyomtatd()
Dim lap As Worksheet, nyomtatni As Variant, nyomtato As String
Dim mappavalaszto As Integer
Dim fajlnev As String
mappavalaszto = Application.FileDialog(msoFileDialogSaveAs).Show
If mappavalaszto <> 0 Then
fajlnev = Application.FileDialog(msoFileDialogSaveAs).SelectedItems(1)
For Each lap In Worksheets
If Left(lap.Name, 3) = "EE_" And lap.Visible = xlSheetVisible Then nyomtatni = nyomtatni & "," & lap.Name
Next
nyomtatni = Mid(nyomtatni, 2)
nyomtatni = Split(nyomtatni, ",")
Sheets(nyomtatni).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fajlnev, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
End If
End Sub
-
válasz
Fferi50 #43095 üzenetére
Szia!
Közben rászántam az időt és megoldottam a problémát, maradtam a pivot kimutatásoknál.
Amugy Excelben van az adatbázis.
Azt hogy tudom megoldani, hogy az összes olyan lapot ami nincs rejtve és úgy kezdődik a neve, hogy “EE_” azt nyomtassa ki egy PDF fileba?Minden munkalap egy A4-es oldalt tartalmaz, aminek az előláb részében be van állítva az oldalszám. Ha kijelölöm őket kézzel, (tehát az összes amit ki akarok nyomtatni ki van választva egyszerre) és rámegyek a nyomtatára akkor az oldalszámok is növekvő sorrendben vannak egymás után.
Ez lenne a cél, csak gombnyomásra.Köszönöm
-
zsolti_20
senior tag
válasz
Fferi50 #43119 üzenetére
Köszönöm a segítséget, megpróbáltam de így is hiba üzentet kapok ezzel a kóddal:
Sub UpdateW2()
Dim Dic As Object, key As Variant, oCell As Range, i&
Dim w1 As Worksheet, w2 As Worksheet
Set Dic = CreateObject("Scripting.Dictionary")
Set w1 = Workbooks("1.xlsx").Sheets("Sheet1")
Set FD = Application.FileDialog(3)
With FD
.AllowMultiSelect = False 'letiltja a többszörös kijelölést
.Show 'Indítja a dialógboxot
If .SelectedItems.Count = 0 Then
MsgBox "Nem választottál fájlt, befejezzük.", vbInformation
Else
Fajnev = .SelectedItems(1)
Set w2 = Workbooks.Open(fajlnev).Sheets("Sheet1")
w1.Activate 'ha kell, az első füzet aktívvá tétele
'műveletek
'megnyitott füzet bezárása
End If
End With
i = w1.Cells.SpecialCells(xlCellTypeLastCell).Row
For Each oCell In w1.Range("A1:A" & i)
If Not Dic.exists(oCell.Value) Then
Dic.Add oCell.Value, oCell.Offset(, 3).Value
End If
Next
i = w2.Cells.SpecialCells(xlCellTypeLastCell).Row
For Each oCell In w2.Range("A2:A" & i)
For Each key In Dic
If oCell.Value = key Then
oCell.Offset(, 2).Value = Dic(key)
End If
Next
Next
End Sub
-
zsolti_20
senior tag
-
zsolti_20
senior tag
válasz
Fferi50 #43115 üzenetére
Sajnos így is ugyan az a hiba. Ezt a kódot szerettem volna úgy átalakítani, hogy a megnyitott file legyen a második, és ne kelljen minden alkalommal átírnom:
Sub UpdateW2()
Dim Dic As Object, key As Variant, oCell As Range, i&
Dim w1 As Worksheet, w2 As Worksheet
Set Dic = CreateObject("Scripting.Dictionary")
Set w1 = Workbooks("1.xlsx").Sheets("Sheet1")
Set w2 = Workbooks("2.xlsx").Sheets("Sheet1")
i = w1.Cells.SpecialCells(xlCellTypeLastCell).Row
For Each oCell In w1.Range("A1:A" & i)
If Not Dic.exists(oCell.Value) Then
Dic.Add oCell.Value, oCell.Offset(, 3).Value
End If
Next
i = w2.Cells.SpecialCells(xlCellTypeLastCell).Row
For Each oCell In w2.Range("A2:A" & i)
For Each key In Dic
If oCell.Value = key Then
oCell.Offset(, 2).Value = Dic(key)
End If
Next
Next
End Sub
-
apaszka
veterán
válasz
Fferi50 #43098 üzenetére
Köszönöm erre nem is gondoltam!
Már készítettem egy weboldalt , hogy jól nézzen ki. Viszont nem tetszik így mégsem!
Újabb keret a böngésző...
Szerk:
De ez sem lesz járható út sajnos!
Egy műszakban vagy 800 sorral bővül és mellé még képek is kerülnek...
De rajta vagyok!
Köszönöm a segítségeteket! -
válasz
Fferi50 #43047 üzenetére
Biztos, végülis így oldottam meg:
Selection.Replace What:="-", Replacement:="0", LookAt:=xlWhole, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2
A LookAt:=xlWhole megoldotta, hogy a teljes cella tartalmát nézze.
Azért köszönöm!
Köszönöm!
-
Louro
őstag
-
adDis
csendes tag
válasz
Fferi50 #42854 üzenetére
Szia Feri! Legutóbbi kérdésemre [link] azt írtad, hogy feltételes formázásnál a feltételnél lehet másik munkalapra vonatkozó képletet megadni [link] . Ezután pár nap alatt meg is csináltam a javaslatod alapján szépen a hivatkozásokat, nagyon szuper lett a tábla.
Felmerült bennem viszont egy ehhez kapcsolódó másik kérdés is, kíváncsi lennék, hogy ez megoldható lenne -e. Ebben a hivatkozásban, amit írtál legutóbb =Munka1!$E$2="I" meg lehet adni olyat, hogy ne csak 1 esetben - ha az adat = "I" - színezze ki az adott cellákat, hanem mondjuk akkor is, ha "Y" az érték?
Ha más színt szeretnék, világos, hogy nem úszhatnám meg az egyenkénti és külön szabályban leírt képletezést. De vajon lehet felsorolni, több opciót is megadni, ha ugyanolyan színre szeretném? (A Munka1 adott E oszlopában legördülő menü van, ahol több opció közül lehet választani, éa közöttük több lehetséges választ is lehetne ugyanolyan színnel formázni) Válaszodat előre is köszönöm! -
p5quser
tag
-
Sesy
aktív tag
válasz
Fferi50 #42876 üzenetére
Azért írtam számot, mert az adatbázisom első oszlopa egy számsor lesz és ennek az első két karaktere fogja meghatározni, hogy az adott adatot melyik munkalapra kell majd kimásolni egy munkalapról, ahová ömlesztve jönnek be az adatok
33 - Falazás
39 - Szárazépítés
stb...A formázást is makróval szeretném megoldani, ha van rá lehetőség...
Úgy képzelem, hogy egy munkalapra be olvasom az összes adatot, majd az első oszlopban lévő kód szerint , újonnan létrehozott munkalapokra szétválogatom az adatokat, majd a végén az adott sablon szerint formázom az elkészült munkalapokat...
A kiindulási munkalapon 9 oszlop lesz és több száz sor. A végére az adatok olyan 20-25 munkalapra válogatódnának szét.
Most azt már meg tudom csinálni, hogy ha előre elkészítem a munkalapokat akkor a megfelelő kódszámút a megfelelő lapra másolja... de így előre manuálisan definiálnom kell 99 munkalapot, amiből lehet, hogy csak 20-at fogok használni... ez így nem túl elegáns
-
adDis
csendes tag
válasz
Fferi50 #42854 üzenetére
Szia Feri! Köszönöm a segítségedet, ez a formázás jót fog tenni a táblázataimnak, mert segíteni fogja az eligazodást, és nagyon jól néz ki tőle!
Más kérdés, hogy 1060 cellára egyenként kell megcsinálnom ezt a másik munkalapra hivatkozó feltételű formázást (mert fontos az abszolút hivatkozás megtartása mindkét munkalapomon), de ezzel számoltam is, hogy ezt valószínűleg nem fogom tudni elkerülni. Ebben a részében sajnos nem segít a formátummásolás, de a többi remekül működik, 360 már el is készült a nap folyamán!Köszi még egyszer, Üdv.
-
karlkani
aktív tag
válasz
Fferi50 #42839 üzenetére
Az vagyok, csak túl sok minden került a képletbe, s nem tetszett neki...
Csak azért kell a tab elválasztás, hogy átmásolva .txt fájlba átláthatóbb legyen. Szuper a képlet, de nem teljes az öröm. Másolva, majd beillesztve idézőjelek közé teszi az adatokat, ha a tab karakter benne van a cellában. Simán összefűzve, szóközzel elválasztva a két cella tartalma, majd átmásolva jó, de amint bekerül a tab karakter a cellába már nem.Ez legyen a legkevesebb, Notepad++ programban néhány kattintással megoldom.
Köszönöm szépen a segítséget!
-
karlkani
aktív tag
válasz
Fferi50 #42837 üzenetére
Szia!
Ja, így oké, azt hittem elrontottam valamit a képleteddel. Az új képlet nem jó az username esetén (ott marad a végén a
,
), mert a végén nem csak a"
van, hanem",
.Még egy kérdés. Szöveges dokumentumba (.txt) elég hülyén mutat egymás mellett a két adat. Összefűzném őket egy cellába, de nem szóköz lenne az elválasztó, hanem 3 tab. Megoldható?
-
karlkani
aktív tag
válasz
Fferi50 #42816 üzenetére
Szia!
Az a helyzet, hogy az "id" több szóban is előfordul a keresetteken kívül, így azokat is találatnak jelzi a c oszlopban. Pontos egyezésre kellene keresni ("id").
Köszönöm!
(#42819) ny.janos
Egyelőre ez lett a megoldás."username": "Felhasználónév",
"id": 123456789,
Abban még segíthetnél, hogyan lesz ebből a kívánt érték. Csere képlettel balról sikerül eltávolítani a felesleget, a végekről a ", és , eltávolítása nem megy. Notepad++ megoldotta, de kíváncsi vagyok.
Köszönöm!
-
RAiN91
őstag
válasz
Fferi50 #42707 üzenetére
Mennyire helytálló, amit feljebb is írtak, hogy nyitva kell, hogy legyen?
Mert így működik, ha meg van nyitva:Sub szamol()
Range("C1") = Workbooks("asd.xlsx").Sheets("Diagram").Range("A1")
End Sub
Ha zárva van akkor nem, és úgy sem, ha az elérési út be van írva, helyesen:
Sub szamol()
Range("C1") = Workbooks("C:\Users\Balint\Desktop\asd.xlsx").Sheets("Diagram").Range("A1")
End Sub
-
RAiN91
őstag
válasz
Fferi50 #42705 üzenetére
Köszi a válaszokat.
Ellenőriztem a fájlneveket, jók.
Meg is nyitja ezzel a paranccsal:
Workbooks.open("C:\Users\Balint\Desktop\asd.xlsx")
Szóval, a munkalap hivatkozásnál lehet a probléma, tehát ezzel a résszel:
.Worksheets("Diagram").Range("A1")
Van diagram fül, és táblázat, A1-be beírtam egy számot.
-
bagyulajuve
addikt
válasz
Fferi50 #42695 üzenetére
ezt szomorúan hallom, köszi az infót
állítgattam össze-vissza, de magyarban és angolban is előfordult, aztán most már rájöttem egy metódusra, ami ha nem is tökéletes de megoldotta a problémákat (mert utána még ha úgy is tűnt, hogy a dátum probléma eltűnt, de matlabban viszont nem tudott bizonyos adatokat értelmezni egyazon fájlban, amit abszolút nem értek)
Excel-ben
import data
minden adatot kiválasztok
replace all "," --> "."
a szöveget general-ról number-re állítom, majd vissza állítom general-raés így volt hajlandó minden adatot helyesen megjeleníteni és amit a matlab is befogadott feldolgozásra
szóval megoldódott, de valahogy elég gagyinak érzem ezt a problémát és már nem először futottam bele
-
Gabiwan
csendes tag
válasz
Fferi50 #42680 üzenetére
A méretek össze-vissza vannak a névben, szóval ez tuti nem jó.
Feltöltök egy képet az Excelről.
A oszlopban vannak a nevek és én így szeretném kiíratni a B oszlopba a méretet automatikusan.
A méretek a névben össze-vissza megjelennek, talán az egyetlen ami van, hogy külön szerepelnek a névben.
Nyilván minden "L" betűt nem lehet kigyűjteni, mert akkor az hülyeség és fals lenne. -
pero19910606
csendes tag
válasz
Fferi50 #42672 üzenetére
Szia!
Egyelőre sajnos nem megoldás, mert az elmúlt 1-2 évben rengeteg pénzt költöttek a logisztikára (2 új raktár is épült az elmúlt időszakban) és most ha pénz költésről van szó, akkor nagyon lassan és nehezen mennek a dolgok.
Nem állami cég
2 nagy szereplő van a piacon ebben az ágazatában, az egyik mi vagyunk.
Igen tudom, hogy ez egyáltalán nem lesz egyszerű, de bízom abban, hogy ha fel tudunk mutatni tényleges számokat, akkor az elég lesz a meggyőzésükhöz. Illetve ez egy óriási kihívás, amit semmiképp nem hagynék ki.
Megyek is bújom tovább az egyetemi előadásokat és a youtube videókat
Üdv!
-
pero19910606
csendes tag
válasz
Fferi50 #42667 üzenetére
Szia!
Pontosan, meg kellene venni, de egyelőre a "jól van az úgy", "eddig is meg voltunk", "eddig is volt valahogy" hozzállás a jellemző sajnos.
A közvetlen vezetőm hozott ide egy másik cégtől, ahol már korábban együtt dolgoztunk.
Mi vagyunk az újak és tudjuk, hogy lehet ezt máshogy és jobban csinálni. Úgy vagyunk vele, hogy ha sikerülne egy használható modellt (de nyilván nem tökéletest) összeraknunk és meg tudjuk mutatni, hogy 3-4 Mrd Ft-ot tudunk spórolni a készleten, akkor talán megjönne a kedv egy rendes rendszer kifejlesztéséhez.Nagyjából ez zajlott le a vezetőm egyik korrábbi cégénél is (innen jött az ötlet). 1-2 ügyes excel-es összeült és néhány hónap alatt macrok segítségével összeraktak egy működő rendszer, majd miután a főnökök is látták, hogy jó, megbíztak egy külsős céget, aki megcsinálta az egészet rendesen.
@fila Igen, 350 Mrd Ft körül volt a 2018-as árbevétel és ebből nem jut pár 10 millió egy ilyen fejlesztésre...
Átlagosan 3 heti (átlag forgalom alapján) készletszintet szeretnénk elérni (kivéve néhány esetben) a jelenleg 4-5 helyett, de mivel ekkora készletről van szó, így akár néhány %-nak is nagyon örülnénk, ha az biztosan tartható, hiszen az is több száz millió ft lenne.
-
dm1970
aktív tag
válasz
Fferi50 #42642 üzenetére
Az a gond, hogy ez egy éves összesítő táblázat, s ahogy keletkeznek, változnak a fájlok, úgy szeretném látni az adatok, tehát a ki-be kapcsolás sem jó. Úgy néz ki marad a régi "megoldás", létrehozni minden fájlt minden évkezdéskor, amire hivatkozok. Soknak nem sok, de ezt próbáltam kiküszöbölni.
Köszi a segítséget.
-
csanyiadam
tag
válasz
Fferi50 #42616 üzenetére
Szia, köszönöm szépen a gyors választ. Készítettem 2 képet. Az első az eredeti hirlevél küldő rendszerből exportált adatokat tartalmazza. A lényeg, hogy a címkék változó sorrendben vannak egy cellán belül. A második képen az szerepel, ahogy én szeretném látni. Egy megadott sorrendbe szedje szét az adatokat külön-külön cellákba, egyformán minden sorban. Abban az esetbe, ha egy címke nincs a megadott sorban, akkor azt az oszlop ne töltse ki. Van erre lehetőségem valamilyen módon? Köszönöm szépen. Ádám
-
dm1970
aktív tag
válasz
Fferi50 #42617 üzenetére
Szia!
Nem akar összejönni, egyszerűen nem tudom alkalmazni a hahibát.
Van egy ilyen képletem:
=+FKERES(A1;'C:\Users\dm1970\Desktop\[próba2.xlsx]Munka1'!$A$1:$B$3;2;HAMIS)
Hová kell tenni azt a hahibát?
Mondjuk azt nem írtam az elsőben, hogy fkerest használok, lehet ez a gond. -
norby91
tag
válasz
Fferi50 #42571 üzenetére
Szia.
Formázás összejött.. Nem irtam a feltétel elejére egyenlőség jelet és ezért nem csinált semmit..
a letisztult verzió volt a megoldás.
=G6=1
már vagy 20 féle módon beirtam, mindeféle aposztróffal meg formábanAz INDIREKT függvénnyel meg szenvedek... ha esetleg lesz időd segithetnél, hogy gondoltad az átirást.
=D7-(ÁTLAGHA(F7:AAH7;">0";$F$4:AAH4)) -
Louro
őstag
válasz
Fferi50 #42480 üzenetére
Ha magamnak csinálom a forrást, mindig lecserélem ezeket. De sajna adminisztratív hölgyek ülnek a felhasználói oldalon. Ők másolták be a levelezéseket egy cellába. Ha én most egy sorba teszem, akkor morogni fognak, hogy "de bénák vagytok".
De, ha duplaklikkel nyitom meg a CSV állományt, a (hülye) Excel felismeri a szövegjelölőt és egy cellába pakolja.
Példa a cella tartalmára:
"Ügyfél az alábbit írta 2020.01.01. 00:01:32Kedves Címzett!
Szeretném közölni Önökkel, hogy a fagyijuk nem hogy kellemes, de leforrázta a nyelvet és emiatt 8 napon túl gyógyuló sérülést szereztem.
Ezúton szeretnék kárpóltást kérni Önöktől, mert bízom a cég jó hírnevében.
Tisztelettel,
Kis Jancsika"Beimportálva, makróval a forrást megnyitva szétesik. Már arra is gondoltam, hogy egy oszlopba beolvastatom és ciklussal szedetem szét, de ez nagyon ciki. Ha duplaklikkel nyitom meg, akkor jó.
Itt egy mintaállomány: https://drive.google.com/open?id=1ETUmKncvdnGcz7bztbq8u4jlLNgWB5BG [link]
Megnyitva jó, de makróval:
Workbooks.Open(".....") -
norby91
tag
válasz
Fferi50 #42459 üzenetére
Hali.
Ez jó tipp volt, köszi.
Egyesével megirtam minden tartományt, egybe nem tudom hogyan lehetne.Arra van megoldás, hogyha az adott tartományon belül nem található személy, akkor ne mutasson hibaüzit? (#REF!) - A tömberedményt nem sikerült kiterjeszteni, mert felülirná a "..." tartomány adatait.
Ugye egymás mellett vannak az oszlopok, s ha ahol nincs eredmény, az a tábla "kiszélesedik", s ezért jön a REF. -
tgumis
tag
válasz
Fferi50 #42403 üzenetére
hála és köszönet
nagyon sokat segítettél. Már csak a visszatérést a célfüzetbe kell megoldanom valahogy. Ugye ott rontottam el hogy csak benne hagytam a Windows résztSub AnyagbizAdatokAutomatikusBetolteseII()
'
' AnyagbizAdatokAutomatikusBetoltese Makró
'
'
Set celfuzet = ActiveWorkbook '(mivel megnyitás után az új füzet lesz aktív)
Windows("AnyagbizAdatok.XLSX").Activate
Range(Range("A2"), Range("K2").End(xlDown)).Copy Destination:=celfuzet.Sheets("anyagbiz_lista").Range("Anyagbiz[Anyagbiz-szám]")
End Sub -
-
tgumis
tag
válasz
Fferi50 #42396 üzenetére
ez az eredeti:
Sub AnyagbizAdatokAutomatikusBetoltese()
'
' AnyagbizAdatokAutomatikusBetoltese Makró
'
'
Windows("AnyagbizAdatok.XLSX").Activate
Range("A2:K2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("Negyedéves gyár számolós_V2.2_üres.xlsm").Activate
Range("anyagbiz[Anyagbiz-szám]").Select
ActiveSheet.Paste
End Suberre alakítottam de nem megy
Sub AnyagbizAdatokAutomatikusBetolteseII()
'
' AnyagbizAdatokAutomatikusBetoltese Makró
'
'
Set celfuzet = ActiveWorkbook '(mivel megnyitás után az új füzet lesz aktív)
Windows("AnyagbizAdatok.XLSX").Activate
Range(Range("A2"), Range("K2").End(xlDown)).Copy Destination:=celfuzet.anyagbiz_lista(1).Range("Anyagbiz[Anyagbiz-szám]")
End Sub -
tgumis
tag
válasz
Fferi50 #42392 üzenetére
Köszi
Még egy kérdés:
van egy ilyenemSub AnyagbizAdatokAutomatikusBetoltese()
'
' AnyagbizAdatokAutomatikusBetoltese Makró
'
'
Windows("AnyagbizAdatok.XLSX").Activate
Range("A2:K2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Windows("Negyedéves gyár számolós_V2.2_üres.xlsm").Activate
Range("anyagbiz[Anyagbiz-szám]").Select
ActiveSheet.Paste
End SubHogyan tudom a "Negyedéves gyár számolós_V2.2_üres.xlsm" eztúgy megoldani hogyha átnevezik akkor is működjön. Mert most csak akkor fog működni ha mindig ugyanazon a néven mentik el.
-
tgumis
tag
válasz
Fferi50 #42386 üzenetére
Nagyon király Köszi
Már csak egy gondom van az pedig az hogy az anyagbiz táblázatban az Aoszlopig értékek az L oszloptól az O oszlopig viszont képletek vannak így azok mind eltűntek.
Előtte átmásolom máshová majd így vissza tudom másolni
Talán így jó lesz:
Sub KepletMasol()
'
' Makró4 Makró
''
Range("Y1:AB1").Select
Selection.Copy
Range("L2").Select
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
End Sub -
huan
őstag
válasz
Fferi50 #42376 üzenetére
Szia!
Igazad van! Köszönöm szépen!
Olyat lehet csinálni, hogy rákattintás előtt mondjuk egy hiperhivatkozáson már "látszódjon" hogy nem ad eredményül semmit?
Magyarul a hiperhivatkozás "kedves neve" mondjuk "kép", ha nincs kép, akkor a "kedves neve" "nincs kép", persze kattintás előtt. -
Petium001
csendes tag
válasz
Fferi50 #42250 üzenetére
Szia!
Kicsit bővítettem a függvényen, a végén hozzáadja a beszerzési árat,így bruttó összeg lesz a vége. Hogyan tudom megcsinálni, hogy ha egy termék súlya 5 kg alatt van, és az ára 2700 ft alatt, akkor 1,3-as legyen a szorzó, ha nem teljesül a két feltétel egyike, akkor pedig a táblázatban szereplő értéket adja hozzá? Viszont egy olyan gond is van, ha ezek a feltételek teljesülnek, és a végösszeg nem éri el a 8000 Ft-ot, akkor le kell vonni belőle 995 Ft-ot...Próbáltam beírni,de szerintem nem jó a függvény, és a levonásra már tippem sincs...
=FKERES(B1;$I$1:$J$6;2;1)+HA(B1<5;C1*0,3;0)+HA(C1<2700*0,3;0)+C1
Új hozzászólás Aktív témák
Hirdetés
- Játékkulcsok olcsón: Steam, Uplay, GoG, Origin, Xbox, PS stb.
- Assassin's Creed Shadows Collector's Edition PC
- Bontatlan - BATTLEFIELD 1 Collectors Edition - Játékszoftver nélkül
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Új, bontatlan World of Warcraft gyűjtői kiadások
- Kaspersky, McAfee, Norton, Avast és egyéb vírusírtó licencek a legolcsóbban, egyenesen a gyártóktól!
- Azonnali készpénzes Sony Playstation 5 lemezes és digitális felvásárlás személyesen/csomagküldéssel
- Bomba ár! HP ZBook FireFly G8 - i7 I 16GB I 512SSD I 15,6" FHD Touch I Nvidia 4GB I Cam I W11 I Gar!
- BESZÁMÍTÁS! Apple iMac Pro (2017) 5K - Xeon W-2140B 64GB DDR4 RAM 1TB SSD Radeon PRO Vega 56 8GB
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 16/32/64GB RAM RX 7700XT 12GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest