Az „Excel” fórum célja, hogy keretet adjon az Excel felhasználók széles táborának tapasztalataik megosztására, és lehetőséget a segítséget kérőknek. Az alábbi összefoglaló azért készült, hogy segítse a helyes kérdésfeltevést.
– Írd le szabatosan a problémát. Úgy fogalmazz, hogy ne csak te magad, de a szakértő is megértse, mire szeretnél választ kapni.
– Írd le, hogy milyen verziójú Excellel dolgozol. (Vagy ha nem – ill. nem csak – Excel, akkor micsoda?)
– Írd le, hogy milyen úton indultál el, és hol akadtál el rajta.
– A kérdés megértése szempontjából sokat segíthet, ha feltölteszt egy képet, amin látszik, hogy mit szeretnél, vagy illusztrálja azt.
– Még jobb, ha feltöltesz egy minta munkafüzetet valahová (pl. data.hu). Feltöltés előtt távolítsd el belőle a nem publikus adatokat.
– Ha a feladat jellege olyan, célszerű az "előtte" és "utána" állapotokat bemutatni. (Miből kellene csinálni mit?)
– Ha VBA kódon kell javítani, másold be a releváns kódrészt. Rövid kód mehet hozzászólásba, hosszú kód inkább ide: http://pastebin.com/
– Ha valami nem úgy működik, ahogy kellene, add meg a rendellenes viselkedés jellemzőit, a hibaüzenetet, és a hibát okozó programsort.
De felismeri dátumként, jobbra rendezve? Ha nem, akkor egyedi dátumformátummal rávehető a felismerésre? Mert akkor ugyanúgy működnie kellene a kivonásnak.
Oké, ez rendben van. Probléma: beírtam a cellába a függvényt > Enter. A 33401 Hsz-be csatolt kép fogad nem a felkerekített szám érték. mit írtam rosszul?
A 33394 volt a kérdésem és a beillesztett képernyő mentésekkel próbáltam illusztrálni. A 3. lépés mentését ebben a hsz-ben nem jól ilesztettem be, ezt javítottam 33395-ben.
Egyébként egy költség kalkuláció lesz. A vízszintes sor: mennyiség x egység ár = összesen. Ezek a cellák lesznek függőlegesen Auto Sum-mal összesítve, de szempont: ne legyen pl. 11541 Ft, > 11600
Itt lenne jó, ha a két lépést: AutoSum és Kerekítést össze lehetne vonni.
Egyébkként a KEREK.FEL (és minden kerekítés függvény) lényege, hogy a további műveleteket már a kerekített értékkel végzi az Excel.
Ellentétben azzal, amikor cella formázással állítjuk be a számformátumot. Ilyenkor hiába csak 2 tizedesjegyet látsz pl., akkor is a teljes számmal számolja az eredményt.
Vagyis nem mindegy, hol kerekítesz mikor számolsz (ha egyáltalán kerekíteni kell).
VBA macro segítségével szeretnék file-t feltölteni egy hálózati nyomtató könyvtárába.
Manuálisan ez úgy működik, hogy totalcommanderrel megnyitom az ftp kapcsolatot IP, név, jelszó megadásával, majd átmásolom a file-t egyik könyvtárból a másikba.
Azt szeretném VBA macroval megoldani hogy ugyanez történjen egy commandbutton megnyomására.
Aki konkrét segítséget tud adni, nagyon megköszönném. Angol nyelvű google linkeket nem kérnék.
Private Sub Sorsolás() Dim StCount As Long, arrStations, rngStations As Range Dim i As Long, j As Long, sTemp As String, lTemp As Long, ListedOnes As String, Attempts As Long, Continue As Boolean Dim rngCol As Range, rngRow As Range Set rngStations = ThisWorkbook.Worksheets("Munka1").Range("F1").CurrentRegion.Resize(1) StCount = rngStations.Cells.Count ReDim arrStations(1 To StCount, 1 To 2) For i = 1 To StCount arrStations(i, 1) = rngStations.Cells(i) arrStations(i, 2) = Application.WorksheetFunction.CountA(rngStations.Cells(i).EntireColumn) - 1 Next Continue = True While Continue = True Continue = False For i = 1 To StCount - 1 If arrStations(i, 2) > arrStations(i + 1, 2) Then sTemp = arrStations(i, 1) lTemp = arrStations(i, 2) arrStations(i, 1) = arrStations(i + 1, 1) arrStations(i, 2) = arrStations(i + 1, 2) arrStations(i + 1, 1) = sTemp arrStations(i + 1, 2) = lTemp Continue = True End If Next Wend For j = 1 To 3 Randomize ListedOnes = "|" For i = 1 To StCount Attempts = 0 Set rngCol = rngStations.Find(what:=arrStations(i, 1), lookat:=xlWhole) Set rngRow = ThisWorkbook.Worksheets("Munka1").Range("A:A").Find(what:=arrStations(i, 1), lookat:=xlWhole) Do lTemp = Int(Rnd * arrStations(i, 2)) + 1 sTemp = rngCol.Offset(lTemp) Attempts = Attempts + 1 Loop Until ((InStr(ListedOnes, sTemp) = 0) And (Application.WorksheetFunction.CountIf(rngRow.Resize(, 4), sTemp) = 0)) Or (Attempts = 5000) If Attempts = 5000 Then MsgBox "Úgy tűnik, ezt a sorsolást nem tudom befejezni a feltételek sérülése nélkül. Lehet, hogy ha elölről kezdjük, akkor menni fog." Stop Else ListedOnes = ListedOnes & "|" & sTemp rngRow.Offset(, j) = sTemp End If Next Next End Sub
Jelzem, hogy ha van két vagy több dolgozó ugyanazzal a névvel (pl. két Kis János), azokat egyedi névvel (pl. Kis János I. és Kis János II.) meg kell különböztetni a listában.
Hát ezt így most nehéz, ennyi év után, de emlékeim szerint az Odalbeállítás ablakban a Lap fülön találod meg a nyomtatáskor fent ismétlődő sorok beállítását.
Ami a láblécet illeti, ott az élőfej/élőláb lapon az egyéni élőlábat kell választani, és ott a különböző építőlockákból összetenni azt a lábléc infót, amit akarsz.