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.
Az elsőnél egy kis számtan kell. Ha meghatározod, mekkora a legnagyobb szám (pl. 6 jegyű), akkor kezdheted osztani 10 hatványaival, és ezekből 10 hatványaival való szorzás útján újból összerakni. Lehetne még szöveggé alakítani meg vissza, de az Excelben (2000-est nézek) nincs beépített megfordító fv.
Ha nekem kéne, írnék egy felhasználói fv.-t, ami szöveggé alakítja, megfordítja, és visszakonvertálja. Ennek az előnye, hogy nem kell korlátozni a jegyek számát, mint a számtani megoldásnál.
A második kérdésed alulhatározott, tedd fel pontosabban. Nem derül ki belőle, mit akarsz.
Van egy problémám. Van egy táblázatom, melynek egyes mezőiben egy hh:mm:ss formátumban időpont van bejegyezve. A celleformátum Egyéni - ó:PP:MM -re van formázva.
VBA-val egy textboxba ki szeretném íratni az adott exceltábla mezőjének tartalmát úgy, hogy abban is időpontszerűen legyen kiírva az adat. Azonban a beolvasáskor nem az idő formátum adatát, hanem a számértéket jegyzi be a textbox szövegeként a program.
Meg lehet ezt valahogy oldani, hogy a textboxba beolvasott adat időformátumban jelenjen meg ott is?
Az Excel VBA -hz nem ismer valamelyikőtök valami kisebb programkódot, amivel egy a legegyszerűbb hangrögzítő megoldást meg lehetne oldani. Egyszerűen annyi lenne, hogy egy gombnyomásra elinduljon a rögzítés, aé a leállítás gombra kattintva elmentésre kerüljön meghatározott névvel, és hellyel, amit textbox-ok tartalmaznak?
Visual Studioban megy a Dolog, de VBA-ban nem tudom hogy kell megoldani Google-ban is kerestem de megoldást nem találtam.
Találtam egy kódot, ami nem kérdez rá, simán elküldi az az üzenetet.
(Tools -> References -> Microsoft Outlook xx.x Object Library)
Sub SendMail() Dim objOutlook As Object Dim objMailMessage As Outlook.MailItem Dim emlBody, sendTo As String Dim wkbook As String Set objOutlook = CreateObject("Outlook.Application") Set objMailMessage = objOutlook.CreateItem(0) sendTo = "valaki@valahova.hu" emlBody = "Üzenet szövege" With objMailMessage .To = sendTo .Body = emlBody .Subject = "Üzenet tárgya" .Display .Save .Send End With End Sub
ha aktív az üzenetküldés ablaka, akkor esetleg egy sendkey-el lehet küldeni neki egy alt+entert, az működik szinte minden levelező programban - mint üzenet elküldése.
Igen, de attól még érdemes megpróbálni, mert jóval kényelmesebb így, mintha kézzel kellene megírni az értesítést. És mindenképpen javítja az esélyeket, a nulla javulás feltétele az, hogy zcsorgo "elfelejtse" elküldeni a levelet. Azt pedig nehéz lesz elfelejteni, hiszen közvetlenül a munkafüzet mentése után felugrik neki egy ablak a küldendő levéllel. Neki pedig nem érdeke, hogy elfelejtse, hiszen ő akarta ezt az egészet.
Ha Outlook lenne a levelezőprogram, akkor makróból el tudnám küdeni a levelet, de még akkor is az Outlook rákérdezne, hogy "Egy alkalmazás az Ön nevében üzenetet próbál küldeni, engedélyezi-e" vagy valami hasonló. Szóval user beavatkozás nélkül nem nagyon fog ez menni. Lehet, hogy a Lotus másképp működik. Hétvégén talán lesz időm megpróbálkozni vele. De nem ígérek semmit.
Rájöttem, hogy lehet ezt a mail alkalmazás mélyebb ismerete nélkül is, ha nem kell nagyon cizellált üzenet.
Sub Levélküldés() Dim mTo As String, mCC As String, mBCC As String Dim mSubject As String, mText As String, s As String
mTo = "te@hu.hu" mCC = "ő@hu.hu" mBCC = "meg_ő_is@hu.hu" mSubject = "értesítés" mText = "Figyelj, Jóska! Nézd már meg azt a gázcsapot, mert reggel óta fütyül. Addig én rágyújtok. Zoli"
s = "mailto:" & mTo _ & "?CC=" & mCC _ & "&BCC=" & mBCC _ & "&Subject=" & mSubject _ & "&Body=" & mText ThisWorkbook.FollowHyperlink s End Sub
Ha nem megy, valaki segítsen neki, mert most egy darabig nem fogok ráérni erre.