Keresés

Részletes keresés

wawabagus Creative Commons License 2009.05.29 0 0 9364

Köszi,

Most nézegetem...

:-)

Előzmény: stromba (9348)
tt65 Creative Commons License 2009.05.29 0 0 9363
a megjelenítéshez van egy másik lehetőség is, a beállításoknál, a "Nulla megjelenítése nulla értékű cellákban" pipa megfelelő alkalmazásával!
Előzmény: NeomatiK (9352)
Delila_1 Creative Commons License 2009.05.29 0 0 9362

Az End Sub elé még tedd be:

 

    For sor = 2 To ActiveSheet.UsedRange.Rows.Count
        Cells(sor, 1).Select
        oszlop = Selection.End(xlToRight).Column
        Cells(sor, 2) = Cells(sor, oszlop)
    Next

Ez a B oszlopba beírja a többi oszlop adatát. Utána a többi oszlopot törölheted.

Előzmény: NeomatiK (9360)
Delila_1 Creative Commons License 2009.05.29 0 0 9361

Csak makróval tudom elképzelni.

 

Sub valami()
    For oszlop = 2 To ActiveSheet.UsedRange.Columns.Count
        For sor = 2 To ActiveSheet.UsedRange.Rows.Count
            sz = Cells(sor, 1)
            If sz = Cells(1, oszlop) And f = 0 Then
                Cells(sor, oszlop) = sor - 1: f = 1
            End If
        Next
        f = 0
    Next
    For oszlop = 2 To ActiveSheet.UsedRange.Columns.Count
        For sor = 2 To ActiveSheet.UsedRange.Rows.Count
            sz = Cells(sor, 1)
            If Cells(sor, oszlop) = "" And oszlop - 1 = sz Then
                Cells(sor, oszlop).Select
                felso = Cells(sor, oszlop).End(xlUp).Row
                Cells(sor, oszlop) = sor - felso
            End If
        Next
    Next
End Sub


 

 

Előzmény: NeomatiK (9360)
NeomatiK Creative Commons License 2009.05.29 0 0 9360

A törlést szeretném elkerülni, mert akkor már egyszerűbb ha én megszámolom és beírom manuálisan, vagyis időben kb ugyanannyi.

Sokszor nem kell a jövőben csinálnom, de jelenleg kb 20ezer cellát kéne így megvizsgálni. És manuálisan kicsit sokáig tartana, bár elkezdtem, de háromszáznál abbahagytam :) Jobb lenne valami frappánsabb, gyorsabb megoldás.

 

Amit beraktál képet, ott tényleg valami bibi van a számolást illetően.

Előzmény: wawabagus (9357)
wawabagus Creative Commons License 2009.05.29 0 0 9359

Mégsem jó a függvény, nem mindig csinálja jól a dolgát...

:-(

Előzmény: wawabagus (9356)
wawabagus Creative Commons License 2009.05.29 0 0 9358

#>*!!!#@&>!!!

 

 

Előzmény: wawabagus (9357)
wawabagus Creative Commons License 2009.05.29 0 0 9357

hmmm...bénán másoltam be megint valamit...

a sok sok függvéynes sor helyett ennek kellet volna lennie:

 

A 1-esek 1 1 3 2 5 3 1 4 1 1 3 2 2 3 3 4 1 5 4 6 5 7

 

De az a baj, hogy azért nem 100%-os ez a megoldás...

 

És mi a lényeg?

Hogy csupán függvénnyel 100%-ig automatikusan megoldjuk, semmi törlés stb..., vagy hogy csak simán "kész legyen" :-)))...szóval, hogy csak egyszer kell ilyesmit csinálnod, vagy sokszor majd a jövőben?

 

Előzmény: wawabagus (9356)
wawabagus Creative Commons License 2009.05.29 0 0 9356

És az pl lehetséges, hogy utólag filterrel töröld azokat a sorszámokat, amik pl nem az egyesre vonatkoznak?

 

Azt tudom hogyan sorszámozz, ha van külön 1-es, 2-es stb oszlopod, de az a baj, hogy csak úgy tudom megoldni, hogy legyen érték a nem egyesek mellett is...

 

A 1-esek 1 1 3 1,B2+1,IF(AND(A3=1,A21),B2+1,IF(AND(A3=1,A2=1),1,"")))'>2 5 1,B3+1,IF(AND(A4=1,A31),B3+1,IF(AND(A4=1,A3=1),1,"")))'>3 1 1,B4+1,IF(AND(A5=1,A41),B4+1,IF(AND(A5=1,A4=1),1,"")))'>4 1 1,B5+1,IF(AND(A6=1,A51),B5+1,IF(AND(A6=1,A5=1),1,"")))'>1 3 1,B6+1,IF(AND(A7=1,A61),B6+1,IF(AND(A7=1,A6=1),1,"")))'>2 2 1,B7+1,IF(AND(A8=1,A71),B7+1,IF(AND(A8=1,A7=1),1,"")))'>3 3 1,B8+1,IF(AND(A9=1,A81),B8+1,IF(AND(A9=1,A8=1),1,"")))'>4 1 1,B9+1,IF(AND(A10=1,A91),B9+1,IF(AND(A10=1,A9=1),1,"")))'>5 4 1,B10+1,IF(AND(A11=1,A101),B10+1,IF(AND(A11=1,A10=1),1,"")))'>6 5 1,B11+1,IF(AND(A12=1,A111),B11+1,IF(AND(A12=1,A11=1),1,"")))'>7

 

A függvény pedig a B3-as cellában ez:

=IF(OR(A3<>1,AND(A3=1,A2<>1)),B2+1,IF(AND(A3=1,A2=1),1,""))

 

De utólag ki kell dobni azokat a sorszámokat, amit nem az 1-esre vonatkozank...

És így tovább a 2,3,4,5-tel más oszlopokban...

 

Persze ez elég körmegoldás...

 

Gondolom valami elegánsabb járt a fejedben :-)...

Előzmény: NeomatiK (9354)
wawabagus Creative Commons License 2009.05.29 0 0 9355

Szívesen foglalkozom vele, mert most nincs más dolgom nagyon...

Csak épp már alig van haj a fejemen...:-)))))))

Előzmény: NeomatiK (9354)
NeomatiK Creative Commons License 2009.05.29 0 0 9354
:))))

Köszönöm az együttérzést és a segíteni akarást! Nem szeretnék senkit se lefoglalni, ha van fontosabb, dolga is. De ha szívesen foglalkozol vele, azt nagyon szépen köszönöm!

Előzmény: wawabagus (9353)
wawabagus Creative Commons License 2009.05.29 0 0 9353

Basszus jól feladtad a feladatot...most ezzel idegelem magam...

Jövök, ha lesz megoldásom...

Előzmény: NeomatiK (9352)
NeomatiK Creative Commons License 2009.05.29 0 0 9352

Az eredmény lehet külön-külön oszlopban is, tehát ha 5 számot vizsgálunk az A oszlopban akkor B-ben az 1-esek, C-ben a 2-esek, D-ben a 3-asok, E-ben a 4-esek, F-ben az 5-ösök... ha így hamarabb van rá függvény. Ilyenkor üres cellákkal szeretném feltölteni (meghagyni) az oszlopot, ahol nincs találat.

 

A   B  C  D ....

1   1

3           2

5  

1   3

1   1

3           4

2      7

3           2

1   4

4  

5  

Előzmény: NeomatiK (9351)
NeomatiK Creative Commons License 2009.05.29 0 0 9351

Hellóbelló!

 

Nem találtam függvényt, de biztos van rá valami ügyesség :)

 

Szóval egy oszlopban vannak számok, pl 1-től 5-ig. A mellette lévő cellában szeretném megjeleníteni, hogy hány cella múlva jelenik meg megint az a szám. Már az első cellától kéne számolni, hogy mikor jelenik meg (de ha csak a keresett szám első előfordulásától számolja az is jó)

 

Példa: A oszlop a számok 1-5 között, B oszlop az eredmény

 

A   B

1   1

3   2

5   3

1   3

1   1

3   4

2   7

3   2

1   4

4   10

5   8

 

Törölt nick Creative Commons License 2009.05.28 0 0 9350
Vegyünk egy függvényt a 3. lapon, amely a 2. lapról vesz adatot. Például:

=SZUM(Munka2!C4:D14)

A cél az, hogy a 2. munkalap neve ne egy fix dolog legyen, hanem szintén paraméter. Ezt ugye az INDIREKT függvénnyel lehet megoldani. Ha az aktuális munkalap A1 cellájában van a 2. munkalap neve (tehát A1 = "Munka2"), akkor a fenti példa így módosul:

=SZUM(INDIREKT("'" & A1 & "'!C4:D14"))

Tegyük fel, hogy a 3. lapod tele van olyan képletekkel, ami a fenti módon hivatkozik a 2. lapra: az A1 cellából veszi a lap nevét. Ha ezt a 3. lapot lemásolod, és így létrejön a 4. lap, csak annyi dolgod van, hogy ezen a 4. lapon átírod az A1 cella értékét Munka3-ra, és máris az összes képlet a 3. lapra fog hivatkozni.
Előzmény: Ber_ber (9349)
Ber_ber Creative Commons License 2009.05.28 0 0 9349

Nem egészen értem .

Ha pl. a harmadik lapot átmásolom negyediknek, mitől írodnak át automatikusan a második lapra vonatkozó cella hívatkozások a harmadik lapra vonatkozóra?

Előzmény: Törölt nick (9335)
stromba Creative Commons License 2009.05.28 0 0 9348
Előzmény: wawabagus (9341)
tt65 Creative Commons License 2009.05.28 0 0 9347
az irányított szűrőnél van egy olyan lehetőség, hogy "Csak az egyedi rekordok megjelenítése", ha az eredményt más helyre másolod.
Előzmény: Gubameister (9342)
Gubameister Creative Commons License 2009.05.28 0 0 9346
Köszi a gyors választ. ;)
wawabagus Creative Commons License 2009.05.28 0 0 9345
:-)...gyorsabb voltál 2 perccel :-DDDD
Előzmény: Delila_1 (9343)
wawabagus Creative Commons License 2009.05.28 0 0 9344

Pl beszúrhatsz egy oszlopot és használhatod a COUNTIF függvényt.

Amennyiben van infód/azonosító, ami alapján egyértelműen el tudod dönteni, hogy valami duplán van.

 

Ha pl az e oszlopban van ez az azonosító, akkor írd ezt:

 

=COUNTIF(E:E,$E2)

 

Aztán filterrel kiszűröd az 1-nél nagyobb értékeket és törlöd a sorokat...

 

Bár biztos van más megoldás is...

 

Nekem ez jut eszembe...

 

 

Előzmény: Gubameister (9342)
Delila_1 Creative Commons License 2009.05.28 0 0 9343

A darabteli függvénnyel összeszámoltatod az adataid mellett, utána autoszűrővel kikeresteted az 1-nél nagyobb értéket tartalmazó sorokat.

Előzmény: Gubameister (9342)
Gubameister Creative Commons License 2009.05.28 0 0 9342
Sziasztok

Lenne egy problémám amihez egy kis segítség kellene:

Van egy elég nagy mennyiségű lekért adathalmazom (főkönyvi karton több ezer sor), és elképzelhető, hogy vannak kétszer szereplő tételek benne amiket szeretnék kiszűrni.

Van rá bármilyen ötletek, hogy ezt hogyan tudnám megcsinálni? A legegyszerűbb A-Zig sorba rakom és átnézem ilyen mennyiségnél túl időigényes amivel nem állok éppen túl jól :P

Esetleg azt be tudom állítani, hogy az autószűrő bekapcsolása után kiírja, hogy melyik szűrés esetében hány találat van?

Köszi
wawabagus Creative Commons License 2009.05.28 0 0 9341

Szia!

És esetleg olyat tudnál, hogy excel file-t bezippelni makró segítségével?

Köszi a tippet

 

Előzmény: Törölt nick (9338)
Törölt nick Creative Commons License 2009.05.28 0 0 9340
Köszönöm szépen, ez is pompás! Gyakorolni fogom a Google szakszerű használatát ;-)
Előzmény: Törölt nick (9338)
Törölt nick Creative Commons License 2009.05.28 0 0 9339
Szuper! Köszönöm szépen! Fél délelőtt ezt gugliztam, de nem találtam rá...
Előzmény: Törölt nick (9337)
Törölt nick Creative Commons License 2009.05.28 0 0 9338
Meg egy másik lehetőség:

Private Declare Function GetDiskFreeSpace Lib "kernel32" Alias "GetDiskFreeSpaceA" (ByVal lpRootPathName As String, lpSectorsPerCluster As Long, lpBytesPerSector As Long, lpNumberOfFreeClusters As Long, lpTtoalNumberOfClusters As Long) As Long

Sub DiskInfo()
Dim Sectors As Long, Bytes As Long, FreeC As Long, TotalC As Long, TotalGB As Single, FreeGB As Long
GetDiskFreeSpace "C:", Sectors, Bytes, FreeC, TotalC
Debug.Print " Drive C:"
TotalGB = TotalC / 1024 * Sectors / 1024 * Bytes / 1024
Debug.Print " Total space: " & TotalGB & "GB"
FreeGB = FreeC& / 1024 * Sectors / 1024 * Bytes / 1024
Debug.Print " Free space: " & FreeGB & "GB"
End Sub

(Forrás)
Előzmény: Törölt nick (9336)
Törölt nick Creative Commons License 2009.05.28 0 0 9337
Például a szabad kapacitást így teheted változókba:

Dim sPath
Dim drv
Dim oFs
sPath = "C:"
Set oFs = CreateObject("Scripting.FileSystemObject")
Set drv = oFs.GetDrive(oFs.GetDriveName(sPath))
bytes = drv.FreeSpace
kilobytes = bytes / 1024
megabytes = kilobytes / 1024
gigabytes = megabytes / 1024
kilobytes = Round(kilobytes, 2)
megabytes = Round(megabytes, 2)
gigabytes = Round(gigabytes, 2)

(By Google)
http://www.bigresource.com/VB-Get-drive-size-space-sQzGt6bP6f.html#pmrhM7P3cp

Előzmény: Törölt nick (9336)
Törölt nick Creative Commons License 2009.05.28 0 0 9336

Sziasztok!

 

Azt szeretném megkérdezni, hogy lehet lekérdezni egy meghajtó (pl. C:) foglalt, ill. szabad kapacitását?

 

Köszönöm.

Törölt nick Creative Commons License 2009.05.28 0 0 9335
Mi lenne, ha minden munkalapon kijelölnél n db cellát, ahová beírod azon munkalapok nevét, ahonnan a képletek adatokat vesznek. Pl. A1, B1, C1, stb cellák. Akkor minden munkalapon ugyanazokat az indirekt képleteket használhatnád, csak az adatforrás-munkalap neve, mint paraméter, nem képletből jön, hanem fix érték.
Előzmény: Ber_ber (9332)

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!