Keresés

Részletes keresés

Törölt nick Creative Commons License 2007.01.18 0 0 4820
szerintem a 4771-ből te is ki tudod emelni a neked megfelelő megoldást
Előzmény: byszka11 (4818)
byszka11 Creative Commons License 2007.01.18 0 0 4819
Bocsi nem a munka3-ra hanem a munka2-re.
byszka11 Creative Commons License 2007.01.18 0 0 4818

az elöbbiekben feltett kérdésemnek az általam megírt kódja:

 

 

Sub Rögzítés5()
'
' Rögzítés1 Makró
' Rögzítette: BySzka, dátum: 2007.01.18.
'

'

If "A1" = """" Then
Sheets("Munka3").Select
Else
Sheets("Munka2").Select


End If

 

End Sub

 

 

 

Minden esetben a Munka3-ra ugrik úgyhogy valami a feltételmehatározásnál nem jó! Próbáltam már nem ""-el hanem számmal is de sehogy nem jó! Köszönöm

szenyor Lopez Creative Commons License 2007.01.18 0 0 4817
Erre senki?
Előzmény: szenyor Lopez (4806)
byszka11 Creative Commons License 2007.01.18 0 0 4816

Sziasztok

 

Nekem egy egyszerű problémám lenne, de nem tudom megoldani.

Csináltam egy makrót ami működik is, de azt szeretném elérni, hogy ha mondjuk az A1 cella üres akkor nem csináljon semmit. Előre is köszönöm a megoldást.

Törölt nick Creative Commons License 2007.01.18 0 0 4815
De a legjobb megoldás szerintem felhasználói függvényt csinálni ebből a makró-programból. Így úgy kezelhető mint bármely excel függvény, az argumentumaiban adható meg a keresendő sorszám, oszlopszám,  a vizsgálandó  tartomány.
Előzmény: Törölt nick (4814)
Törölt nick Creative Commons License 2007.01.18 0 0 4814
Lehet ezt úgy is átírni, hogy bizonyos cellákból vegye a szükséges bemeneti adatokat, ne kérdezze meg, és egy nyomógombot hozzárendelni a számolás indítását. 
Előzmény: terra700 (4813)
terra700 Creative Commons License 2007.01.17 0 0 4813
Köszi a fáradságos munkát, de sajnos ez így nem jó. Külső felhasználói beavatkozás nélkül kell megoldani. ha esetleg arra van vmi ötleted, akkor azt szívsen veszem, ha nem, akkor azért köszi mindent!
Előzmény: Törölt nick (4809)
Törölt nick Creative Commons License 2007.01.17 0 0 4812
Kösz, ennyi. Jövök egy sörrel neked.
Én ide-oda rakosgattam a While Trim$(ActiveCell.Value) <> "" sort, de eszembe nem jutott, hogy betegyek a Wend elé egy Select-et.
köszönöm.
Előzmény: Törölt nick (4811)
Törölt nick Creative Commons License 2007.01.17 0 0 4811

 

Így ránézésre az lehet a gond, hogy nem korrekt az aktiv cella megadása a vizsgálatnál. Kérdés: mi az aktiv cella éppen?

Korábban írtad, hogy a C oszlopra vizsgálja, van -e benne valami, de itt a ciklusban nincs jól kiválasztva a C következő cellája a vizsgálat előtt. Azaz a ciklus végén a léptetés után a wend előtt kéne egy cells(i,3).select. Én nem tudom tesztelni jól, mert nincs tesztadatom, és nem néztem meg jobban mit cisnál tulajdonképpen, de szerintem ez a gond.

Előzmény: Törölt nick (4810)
Törölt nick Creative Commons License 2007.01.17 0 0 4810
Carlos, méág tudnál ebben segíteni?
Átírtam ahogy nálam kell, de végtelen ciklusba keveredik. Elvileg akkor kéne megállnia, amikor már nem talál értéket a "C" oszlopban
Gondolom, hogy a While Trim$(ActiveCell.Value) <> "" sorral van a gond, de mi?


Sub BeIr()

Dim i As Long

i = 3
Cells(i, 3).Select
While Trim$(ActiveCell.Value) <> ""

Cells(i, 3).Copy
Range("M2").PasteSpecial
Range("F2").Copy
Cells(i, 6).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
i = i + 1
Wend

End Sub
Előzmény: Törölt nick (4809)
Törölt nick Creative Commons License 2007.01.17 0 0 4809

 

Egy makrós megoldás:

 

 

Sub Összead()

Dim Szam As Long
Dim Oszlop As Long
Dim i As Integer
Dim Hol() As Long
Dim k As Integer
Dim t As Integer
Dim Osszeg As Integer
Dim Eredmenycella As String
On Error GoTo hiba

Szam = Val(InputBox("Kérem adja meg a keresendő számot!", "Összeadó", "10211"))
Oszlop = Val(InputBox("Kérem adja meg az utolsó oszlop számát!", "Összeadó", "4"))
Eredmenycella = InputBox("Ide kérem az eredményt", "Összeadó", "A10")
Cells(1, 1).Select
i = 1
While Trim$(ActiveCell.Value) <> "" And IsNumeric((ActiveCell.Value))
        ReDim Preserve Hol(1 To i)
        Hol(i) = 0
        If Szam = Val(ActiveCell.Value) Then
                Hol(i) = 1
        End If
        i = i + 1
        Cells(i, 1).Select
Wend

For k = 1 To UBound(Hol)
      If Hol(k) = 1 Then
            For t = 2 To Oszlop
                Cells(k, t).Select
                Osszeg = Osszeg + Val(ActiveCell.Value)
            Next t
      End If
Next k
Range(Eredmenycella).Select
ActiveCell.Value = Osszeg
Exit Sub
hiba:

End Sub

 

 

Előzmény: terra700 (4800)
terra700 Creative Commons License 2007.01.17 0 0 4808

SZUMHA() = már próbálkoztam de nem jó.

 

A pivot táblához nem értek (nagyon), de nem is igazán megoldás.

 

Én a HA függvénybe ágyazott SZUM és FKERES fügvényekkel próbálkoztam. Nem igazán jött össze, mert mindig 1 lett a végeredmény. Igazából kezd megörjíteni, hogy egy nem túl nehéz feladatot ilyen bonyolultan lehet megadni az EXCEL-ben, de egy tömp mátrix determinánsát pillanatok allatt kiszámol...

Előzmény: Törölt nick (4805)
szenyor Lopez Creative Commons License 2007.01.17 0 0 4807

 

Az első kép a lista, a második az űrlap. Így talán érthetőbb, hogy mit szeretnék. Az űrlapra jó lenne a szokásos űrlap vezérlő, amivel léptetni lehet a rekordokat.

Előzmény: szenyor Lopez (4806)
szenyor Lopez Creative Commons License 2007.01.17 0 0 4806

Úgy szeretném megoldani, hogy 1.0-s userek is használhassák;)

Tehát van két munkalapom, az egyiken egy szép kinézetű űrlap, amibe beírhatja az adatokat, a másikban pedig egy lista, ami töltődik az űrlapból. Az űrlap funkció nem rossz, de azt mindig be kell kapcsolni, valahányszor megnyitjuk a doksit és ki kell jelölni a listát hozzá.

Előzmény: Törölt nick (4804)
Törölt nick Creative Commons License 2007.01.17 0 0 4805

Na, de így már jó.

Előzmény: Törölt nick (4803)
Törölt nick Creative Commons License 2007.01.17 0 0 4804
ha jól értem, akkor csak simán "=" jellel kezdve át kell indexelned egyik munkalapról a másikra. (A feltöltendő munkalap celláit hivatkozod ott, ahová be kell vinni az adatokat.

Vagy esetleg: menü / Adatok / Űrlap
Előzmény: szenyor Lopez (4801)
Törölt nick Creative Commons License 2007.01.17 0 0 4803
lásd:
Előzmény: terra700 (4800)
Törölt nick Creative Commons License 2007.01.17 0 0 4802
SZUMHA(), De inkább:
PIVOT tábla (Menü / Adatok / kimutatás vagy kimutatás diagram)
Előzmény: terra700 (4800)
szenyor Lopez Creative Commons License 2007.01.17 0 0 4801

Üdv!

Hogyan lehet megoldani azt, hogyha létrehozok egy saját készítésű űrlapot (pontosabban készítek egy sémát, amin adatokat lehet bevinni) és az töltene egy másik munkalapon egy listát?

terra700 Creative Commons License 2007.01.17 0 0 4800
Sziasztok!

 

Segítségre lenne szükségem. Keresek egy függvényt az alábbi feladatra. Aki tudja a megoldást, kérem írja meg. Fontos lenne.

 

A megoldandó feladat:

 

Vegyünk egy táblázatot (A1:F4).

 

          A               B              C                 D                 E                  F       

1    10211           1              1                  1                 1

   10212                           1                  1                 1                   1

3    10211                                                                  1                   1

   10213           1              1                  1

 

Amire nem tudok rájönni. Vegyünk egy cellát valahol a munkalapon, amiben a megoldást majd kiíratjuk. Azt az utasítást/függvényt szeretném hozzárendelni, hogy: egy általunk megadott azonosító számot (A oszlop) keressen meg, és az általunk megadott oszlopokig adja össze a benne található számokat, de ha a keresett szám többször is előfordul (10211) ne okozzon neki problémát.

 

A példa kifejtése: Vegyük példának a 10211 számot. Kerestessük meg a táblázatban, ahol megtalálja, ott B,C,D oszlopban található számokat adjuk össze. Mivel a 10211 szám kétszer is előfordul, így ebben a 2 sorban található számokat adja össze, de csak a B,C,D oszlopban!!!

 

Így az eredmény 3 lesz.

 

A segítséget előre is köszönöm!

terra700 Creative Commons License 2007.01.17 0 0 4799
Sziasztok!

 

Segítségre lenne szükségem. Keresek egy függvényt az alábbi feladatra. Aki tudja a megoldást, kérem írja meg. Fontos lenne.

 

A megoldandó feladat:

 

Vegyünk egy táblázatot (A1:F4).

 

          A               B              C                 D                 E                  F       

1    10211           1              1                  1                 1

   10212                           1                  1                 1                   1

3    10211                                                                  1                   1

   10213           1              1                  1

 

Amire nem tudok rájönni. Vegyünk egy cellát valahol a munkalapon, amiben a megoldást majd kiíratjuk. Azt az utasítást/függvényt szeretném hozzárendelni, hogy: egy általunk megadott azonosító számot (A oszlop) keressen meg, és az általunk megadott oszlopokig adja össze a benne található számokat, de ha a keresett szám többször is előfordul (10211) ne okozzon neki problémát.

 

A példa kifejtése: Vegyük példának a 10211 számot. Kerestessük meg a táblázatban, ahol megtalálja, ott B,C,D oszlopban található számokat adjuk össze. Mivel a 10211 szám kétszer is előfordul, így ebben a 2 sorban található számokat adja össze, de csak a B,C,D oszlopban!!!

 

Így az eredmény 3 lesz.

 

A segítséget előre is köszönöm!

Törölt nick Creative Commons License 2007.01.17 0 0 4798
Igeeeeeeeeen
Köszönöm Szépen!
Ezzel egy csomó mindent meg tudtam csinálni!
Előzmény: Törölt nick (4795)
Törölt nick Creative Commons License 2007.01.17 0 0 4797

Használható range-ben is a cells, így tartomány is megadható vele, pl. A1:C5-ös tartománnyal csinélunk valamit, és a számok helyett persze futó változókat is megadhatunk:

Range(Cells(1, 1), Cells(5, 3)).xxxxxx

 

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

Szerintem neked segíthet az előbbi hozzászólásom.

Ha cells()-et használod, könnyen ciklusba tudod szervezni a műveleteket.

cells(i,k) i-edik sor, k-adik oszlop, pl. cells(5,3) a c5-ös cellára hivatkozik, és tartomány is megadható.

Az excel visual basic szerkesztőjének helpjében érdemes megnézni a cells-et és a vonatkozó példákat.

 

Előzmény: baybee (4793)
Törölt nick Creative Commons License 2007.01.17 0 0 4795

 

Csak egy ötlet a megoldáshoz, ha jól értem ilyen jellegű a probléma:

Itt az első oszlop celláin megy végig, amíg nem talál üreset, és átmásolja szomszédos B cellába. Egyéb feltételeket is lehetne vizsgálni, pl. csak akkor álljon le ha n darab üres ceelát talált, vagy az elején hagyja ki az üres cellákat.

 

dim i as long

 

i = 1
Cells(i, 1).Select
While Trim$(ActiveCell.Value) <> ""    
    
    Cells(i, 1).Select
    Cells(i, 1).Copy
   Cells(i, 2).PasteSpecial
    i = i + 1
Wend

Előzmény: Törölt nick (4794)
Törölt nick Creative Commons License 2007.01.17 0 0 4794
Hasonlo a problémám, mint baybee-nek, de most rövidítettem a makron:

Sub BeIr()

Range("C3").Copy
Range("M2").PasteSpecial
Range("F2").Copy
Range("F3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Range("C4").Copy
Range("M2").PasteSpecial
Range("F2").Copy
Range("F5").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

Stb....

Range("C4").Select és Range("F4").Select mindig 1-el nő egész 50-ig - de még jobb ha addig megy, amig talál a "C" oszlopban értéket.
Hogy lehetne ezt ciklusba foglalni, hogy ne kelljen egyesével zongorázni?
Előzmény: Törölt nick (4776)
baybee Creative Commons License 2007.01.16 0 0 4793
Sziasztok!
Sűrgős segítségre lenne szükségem, az excel makro programozásban.
A feladalt a következő:
Makrorögzítéssel kiszámoltatok vmit, egy bizonyos területre. De ezt hogyan tudom végtelenítetni?
Azaz, egészen konkrétan:
Sub szamolj()
Range("D4").Select
ActiveCell.FormulaR1C1 = "=RC[-1]-RC[-2]"
Range("D4").Select
Selection.AutoFill Destination:=Range("D4:D18"), Type:=xlFillDefault
Range("D4:D18").Select
End Sub
Tehát d4-tő d18ig van egy kivonás. Namost azt tudom, hogy ebben a kódban kéne valamit átírnom, ahhoz, hogy ha én a 19, 20,... sorokat feltöltöm adattal, akkor automatikusan végezze el oda is a számolásokat, egészen egy üres sorig. (a továbbiakban a makró újraindítása nélkül(?) ha további sorokba írtunk folyamatosan adatokat, akkor azt ő az előző sorban lévő képlet alapján folytonosan számolta.
) De mit és mire kell kicserélni???
Vmi olyan dereng, mintha ebben a sorban írtunk volna át vmit.:
Selection.AutoFill Destination:=Range("E4:E18"), Type:=xlFillDefault
Nincs vmi joker karakter, amit a 18 helyére beírva esetleg nem határozza meg a végét?
Köszi a segítséget!
Törölt nick Creative Commons License 2007.01.16 0 0 4792
Most néztem az emailes kérdést: szóval a nyomógomb helyének változtatása: a nyomógomb fölé menve az egérrel , a jobb gombbal kattintva, ekkor előjön egy menü is, de közben meg is jelenik a nyomógomb körül egy másfajta keret ekkor, lehet elhúzni a gombot a keret fölé állva és lenyomva tartva  a bal egérgombot..
Előzmény: ÁSZÁSZ (4788)
Törölt nick Creative Commons License 2007.01.16 0 0 4791
..meg persze a Visual Basic szerkeszőben bemenni a Tools - Vb project porperties menübe és a jelszót megadni.
Előzmény: Törölt nick (4789)

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