-
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
-
Charlie Gordon
aktív tag
Van egy munkafüzet, aminek 1. sora címsor, oszlopai : A a név, a 2-3 , 4-5 stb. pedig egy dátumhoz tartozó értékek. Úgy kéne ezt a táblázatot egy makróval feldolgozni hogy a következő munkalapon 4 oszlop legyen: név dátum, érték1 érték2. Tehát minden emberhez annyi sor tartozzon, ahány dátum (oszlopok száma-1)/2 szerepelt az első munkalapon. Érthető ez így vagy nagyon zavaros voltam ?
-
Delila_1
Topikgazda
válasz Charlie Gordon #9552 üzenetére
Kissé zavaros. Tegyél be egy képet róla.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
perfag
aktív tag
válasz Charlie Gordon #9554 üzenetére
Próbálkozz ezzel:
Sub cc()
Dim w As Worksheet
Set w = Worksheets(1)
Sheets(1).Select
datumok = 3 '1 sorban a dátumpárok száma
sor = 0
nevek = 3 'A oszlopban ennyi név van
For j = 1 To nevek
nev = w.Cells(j + 1, 1)
For i = 1 To datumok
datum = w.Cells(1, 1 + 2 * i - 1)
mikor = w.Cells(j + 1, 1 + 2 * i - 1)
mennyi = w.Cells(j + 1, 2 + 2 * i - 1)
Sheets(2).Select
sor = sor + 1
Cells(sor, 1) = nev
Cells(sor, 2) = datum
Cells(sor, 3) = mikor
Cells(sor, 4) = mennyi
Next i
Next j
End Sub -
Delila_1
Topikgazda
válasz Charlie Gordon #9554 üzenetére
Más felfogásban, általánosítva a sorok és oszlopok számát:
Sub Adatosszesites()
Dim w2 As Worksheet
Dim sor As Integer, sor_1 As Integer
Dim oszlop As Integer, oszlop_1 As Integer
Dim datumok As Integer, nevek As Integer
Set w2 = Worksheets(2)
Sheets(1).Select
datumok = ActiveSheet.UsedRange.Columns.Count
sor_1 = 1: oszlop_1 = 2
nevek = Range("A2").End(xlDown).Row
For sor = 2 To nevek
w2.Cells(sor_1, 1) = Cells(sor, 1)
For oszlop = 2 To datumok Step 2
w2.Cells(sor_1, oszlop_1) = Cells(1, oszlop)
w2.Cells(sor_1, oszlop_1 + 1) = Cells(sor, oszlop)
w2.Cells(sor_1, oszlop_1 + 2) = Cells(sor, oszlop + 1)
oszlop_1 = oszlop_1 + 3
Next oszlop
sor_1 = sor_1 + 1
oszlop_1 = 2
Next sor
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Kicsibocs
csendes tag
válasz Delila_1 #9551 üzenetére
Köszönöm
Bár nem így sikerült, de azé' sokat segített
Arra tudnál tippet adni, hogy
van egy combobox a formon, és rendesen ki is tudom választani az excelből a listát, azonban amikor rákattintok, a combo-ban a 0-val kezdődő termékkódok elől eltűnik a nulla...
(Excelben a cella formátuma különleges, egyediben is megmarad a 0 a számok előtt, más formázási mód ezeket törli sajna...)
Azt szeretném, ha a nulla ott maradna a comboban a kiválasztott termékkód előtt, bár a cellába az eredeti formátumába illeszti... tehát a működésével nincs gond csak zavaró lehet a felhasználónak
Kösz, előre is... -
Maestro85
tag
Üdv Mindeninek!
Nem tudja valaki megmondani, hogy excel 2007-ben hogyan lehet karakterkódolást állítani?
Mert a 2003 meg korábbi verziók, ha egy számukra felfoghatatlan file-t érzékeltek, felkínálták a lehetőséget megnyitáskor. De a 2007-es sajnos nem. Boszniai településneveket szeretnék rendezgetni, latin betűs átírással. Tehát nem ciril betűk vannak, hanem sima latin, de pl egy Đ vagy đ betű is már totál értelmezhetetlenül jelenik meg.
Mármint, ha megnyitom a file-t, amivel dolgozni szeretnék, akkor kavarodik össze az egész.[ Szerkesztve ]
-
Maestro85
tag
Hát beírtam keresőbe, hogy "karakterkódolás", amikor ebben a fórumban jártam, és semmit nem dobott ki.
Kipróbáltam Delila_1 (Fire) megoldását, átállítottam a területi beállításoknál a rendezést technikaira, de még így sem volt jó. Amúgy egy .dbf file-t szerettem volna megnyitni. Ha gondolod el tudom küldeni, hogy nálad normálisan néznek-e ki a betűk.De raktam fel open office portable-t, mert egyszerűbbnek, és gyorsabbnak tűnt. Itt ki tudtam választani az Eastern Europe (windows 1250 latin) karakterkódolást, és működött remekül, szóval végül is probléma megoldva. Azért köszönöm a választ!
[ Szerkesztve ]
-
perfag
aktív tag
válasz Maestro85 #9562 üzenetére
Jól elszúrtam, Delila válasza itt.
Megnéztem az Excel 2010 mit szól a szerb abeceda szerinti rendezéshez, nem volt boldog. Viszont átdobtam Wordbe, táblázatot csináltam belőle, Táblázateszközök, Elrendezés, Rendezés párbeszédablak - Egyebek ... A rendezés nyelve - és már kész is. -
Kicsibocs
csendes tag
Sziasztok!
Ismét elakadtam, és segítségre lenne szükségem:
(megpróbálom leegyszerűsíteni...)
Van két munkalapom, Munka1 és Munka2Munka1-en:
A oszlop: termékkódok, X oszlopban üres cellákMunka2:
A1111:A1131 tartomány: termékkódok
C1111: C1131 tartomány: a termékkódokhoz tartozó értékekAzt szeretném elérni, hogy a Munka2-ről a C oszlopban található értékeket a Munka1 x oszlop megfelelő cellájába másolja, vmi függvénnyel, de asszem elakadtam...
próbáltam a KUTAT-tal, ami be is jött, egészen addig, amíg meg nem találta az első találatot, mert utána mindenhol az szerepelt....
Szükség lenne a HA-ra is, de a kettőt nem tudom kombinálni...Tehát: írnám a munka1 X oszlopába, hogy keresse meg a Munka2! A1111:A1131-ben szereplő termékkódot a Munka1! A oszlopában (kb. 400 tétel ), és ha megvan, akkor illessze a kód sorába, az X oszlopba a Munka2! C1111: C1131-ben szereplő megfelelő értéket, ha nincs, akkor üres cella ké'ne
Nem jön össze.....
[ Szerkesztve ]
-
Delila_1
Topikgazda
-
Oly
senior tag
Sziasztok
Adott egy mappa benne több file.
Minden fileban ugyanazok a típusú adatok több oszlopban.
File-onként más más menyiségű sor.
Mind fejléccel ellátva.Ezeket az adatokat hogyan tudnám a legegyszerűbben összefűzni egy táblára?
Segítségetek előre is köszönöm.
SonyEricsson T20 - T68 - T610 - K700 - W800 - K750 - K800 - C702 - P1 - MOTO Defy - Galaxy S Advance - Galaxy S4 - Lumia 820 - Honor 7 - iPhone 5S
-
Delila_1
Topikgazda
Feltételezve, hogy a füzetekben, és a gyűjtő füzetben az első sorban megvan a címsor, valamint, hogy az összemásolandó adatok az A oszlopban kezdődnek:
Sub Osszadat()
Dim wbgyujto As Workbook, wb2 As Workbook
Dim utvonal As String, FN As String
Application.ScreenUpdating = False
utvonal = "E:\Temp\"
Set wbgyujto = ActiveWorkbook
FN = Dir$(utvonal & "*.*", vbDirectory)
Do While (Len(FN) > 0)
If Not (FN = "." Or FN = "..") Then
Workbooks.Open Filename:=utvonal & FN
Set wb2 = ActiveWorkbook
Range("A2").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Copy
wb2.Close
Range("A" & ActiveSheet.UsedRange.Rows.Count + 1).Select
ActiveSheet.Paste
End If
FN = Dir$()
Loop
Application.ScreenUpdating = True
Msgbox "Kész az összemásolás"
End SubAz utvonal = "E:\Temp\" sort írd át a saját útvonaladra
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Dave™
nagyúr
Sziasztok! Két függvény jellegű kérdésem lenne, sajnos nagyon láma vagyok az excel függvényekhez, és most használnom kellene majd aktívan őket.
1) Melyik függvénnyel lehet olyat csinálni, hogy a pl. 01.523.1.285 cellából a pontokat eltávolítsa, csak a szám maradjon?
2) Ha egy táblában az első oszlopban termékek vannak, többször is előfordul egy termék, nem sorban vannak, hanem össze vissza, és minden termékhez tartozik egy értékesítési mennyiség (minden előfordulásnál más), akkor hogy lehet ezeket az értékesített mennyiségeket termékkategóriánként összegezni? A pivot tábla megy, úgy is jó, de külön függvénnyel is kellene, és nem tudom melyik jó hozzá. Úgy csináltam meg, hogy sorba rendeztem a termékeket és szummáztam minden termékcsoportot külön, de ennél elegánsabb kellene
Nagyon köszönöm
-
bozsozso
őstag
Sziasztok!
Ismét segítséget szeretnék kérni. Annyit szeretnék, hogy egy cella értékének kerekítése vagy 5 vagy 9 legyen.
pl.:128,75=129;131,13=129;43,1=45;46,2=45
tehát minden esetben 9-re vagy 5-re végződjön a szám attól függően, hogy melyikhez esik közelebb
Ha tudtok megoldást kérlek segítsetek.
Előre is köszönöm
-
Dave™
nagyúr
válasz Delila_1 #9576 üzenetére
1. Megnéztem, de ennek be kell írnom mit szeretnék helyette kapni. Olyan nincs, ami egy számból eltávolítja a pontokat? Elvileg valami ilyesmit vártak volna.
2. Én is ezzel csináltam, de ha egy ilyen van pl:
A termék 3db
A termék 1db
B termék 2db
C termék 4db
A termék 2db
B termék 1db
B termék 8dbAkkor ahhoz, hogy rendesen SUM-olni lehessen sorba kell rendezni (át kell rendezni) a táblázatot. Nincs olyan függvény, ahol megadom, hogy keresse meg az A-kat, majd az ezekhez tartozó darabszámokat adja össze?
-
félisten
-
Delila_1
Topikgazda
1. A1-ben van a 12.234.567.8 adat.
=HELYETTE(A1;".";"") A dupla idézőjellel azt mondod, hogy üres stringre cserélje a pontokat.2. Nem SZUM, hanem SZUMHA függvény kell. Nem kell rendezni az adatokat.
Az A oszlopban vannak a termékeid, B-ben a hozzájuk tartozó értékek.
=SZUMHA(A:A;A1;B:B)
megadja annak a terméknek a B oszlopbeli összegét, amit az A1 tartalmaz. A képletbe az A1 helyett idézőjelek között megadhatod a keresett termék nevét.Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
félisten
-
bozsozso
őstag
válasz Fire/SOUL/CD #9582 üzenetére
na a 122 az nagyon jó kérdés, de mivel nem egész számokról van szó így ennek elég kicsi a valószínűsége. Az 5-re kerekítést azt meg tudtam valósítani de a 9-es az nem megy.
-
radam
csendes tag
Sziasztok!
Megvalósítható-e az, hogy pl. három oszlop kivételével a cellákat jelszóval levédjem/zároljam?
Hogyan (Excel 2007-ben)?
Odáig jutottam, hogy Korrektúra->Tartomány módosításának engedélyezése, itt megadom a Tartományt, viszont az Engedélyek...-nél felhasználókat kellene megadnom... Vagyis ez a funkció csak hálózaton működik? Mezei .xlsx-nél nem tudom beállítani csak bizonyos cellák zárolását (az egész munkafüzet levédése az megy)?Köszönöm.
-
félisten
válasz bozsozso #9584 üzenetére
Az alábbi kód szabályos KEREKÍTÉS-t végez először (5 tizedtől felfelé illetve az alatt lefelé), továbbá most úgy írtam, hogy a kerekítést követően a 2-re végződő számokat 5-re , míg 7-re végződőket 9-re módosítja. Próbáld ki, remélem így megfelel.
Function FSCD_Round5_9(xCell As Range) As Single
Dim xNumber As Single
Dim xStr As String, xChar As String
Dim MyFxs As WorksheetFunction
Set MyFxs = Application.WorksheetFunction
xNumber = xCell
xStr = MyFxs.Round(xNumber, 0)
xNumber = xStr
xChar = Right(xStr, 1)
Select Case xChar
Case "0"
xNumber = xNumber - 1
Case "1"
xNumber = xNumber - 2
Case "2"
xNumber = xNumber + 3
Case "3"
xNumber = xNumber + 2
Case "4"
xNumber = xNumber + 1
Case "5"
Case "6"
xNumber = xNumber - 1
Case "7"
xNumber = xNumber + 2
Case "8"
xNumber = xNumber + 1
Case "9"
End Select
Set MyFxs = Nothing
FSCD_Round5_9 = xNumber
End Function[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
radam
csendes tag
Még egy kérdés: azt hogy tudom beállítani, hogy egy cellába csak meghatározott értéket lehessen beírni (pl.: Igen vagy Nem), más értéket ne fogajdon be?
Tudja ezt az Excel alapból? -
bozsozso
őstag
válasz Fire/SOUL/CD #9588 üzenetére
biztos buta kérdés lesz, de ezt hogyan tudom használni?
[ Szerkesztve ]
-
perfag
aktív tag
válasz bozsozso #9593 üzenetére
Előkészület: C2:igen, C3:nem - kijelölöd a cellákat amelyekre adatérvényesítést akarsz
Adatok menü, Adateszközök csoport, Érvényesítés parancs
A párbeszédablakban: Megengedve lenyíló: Lista - Forrásnak kijelölöd a C2:C3-at Ok
Ha akarod cifrázni próbáld ki a másik két fület is, beírsz valamiket és figyelszAz ok végrehajtása után a cellákon lenyíló jel jelenik meg. Lenyitod, kiválasztod. De beírhatsz is, ha elvéted akkor háborog. A háborgó üzenetedet a harmadik fülön magad megadhatod.
Lehet, hogy megint elütöttem valamit? Én radam kérdésére válaszolok éppen.
[ Szerkesztve ]
-
félisten
válasz bozsozso #9591 üzenetére
Megnyitod a munkafüzeted, amiben ezt a "furcsa" kerekítést használni szeretnéd, ALT+F11/Insert menü/Module és a megjelenő ablakba bemásolod az általam adott kódot. Mentés másként és makróbarát dokumentumként kell menteni immár.
Az a kód egy függvény, ugyanazok a szabályok érvényesek rá, mint pl a SZUM függvényre, azaz, egy adott cellán állva azt kell beírni, hogy pl =FSCD_Round5_9(A1)
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
bozsozso
őstag
válasz Fire/SOUL/CD #9596 üzenetére
nem tudom valamit biztosan el balfékeskedtem de nekem minden esetben 0-át ír be az adott cellába. na mindegy majd holnap megnézem mi lehet a gond.
nem is tudtam, hogy makróban ilyet is tudok írni. egyéb programokkal már próbálkoztam kisebb nagyobb sikerrel, de ezt nem tudtam, hogy ilyenre is lehet használni. na ez egy másik dolog
Köszönöm szépen ok minden rendben meg is találtam a hibát
[ Szerkesztve ]
-
félisten
válasz bozsozso #9599 üzenetére
"nem tudom valamit biztosan el balfékeskedtem..."
Tuti... (ennyire balfax kódot azért én sem teszek be, referenciák Delila_1, perfrag, fehérmancs, stb)[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
Új hozzászólás Aktív témák
- Politika
- HiFi műszaki szemmel - sztereó hangrendszerek
- Autós topik
- Kínai, és egyéb olcsó órák topikja
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Redmi Note 12 4G - valaki fizetni fog
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- GTA VI
- Hobby elektronika
- Tarr Kft. kábeltv, internet, telefon
- További aktív témák...