-
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
-
jobbi
csendes tag
Heló újra!
Azóta megtaláltam a választ, így a kérdés már nem aktuális. Viszont van helyette másik
"A" oszlopban sorban szerepelnek az alábbi értékek:
6:00:00
7:00:00
8:00:00
...
tehát óra:perc:másodperc! "B" oszlopba szeretnék időértékeket bevinni. Azt szeretném, h ha a "B" oszlopba beírom, h pl 14, akkor a cellába ne 14 kerüljön, hanem a tőle balra lévő cella ("A" oszlop) értéke, plussz a beírt érték percben. Tehát, ha "A"oszlop adott sorában az van, h 6:00:00, akkor ha a mellette lévő cellába beírom, h 14, akkor oda 6:14:00 kerüljön, ha 8:00:00 van mellette, akkor 8:14:00. Remélem érthető. Eddig annyira jutottam, h jobb gomb a sheetre, aztán view code, oda beír, h:Private Sub Worksheet_Change(ByVal Target As Range)
SOR = Target.Row
OSZLOP = Target.Column
If OSZLOP = 2 Then
Range("B" & SOR) = Range("B" & SOR) / 24 / 60 + Range("A" & SOR)
End If
End SubEz viszont nem működik. gondolom amiatt, h mikor beírok a cellába vmilyen értéket, elkezd futni ez a makró. ami aztán szintén megváltoztatja a cella értékét: leosztja 24-gyel majd 60-nal, h percet kapjon, aztán hozzáadja ezt az értéket pl a 6:00:00-hoz, így megkapja a 6:14.00-et, viszont azzal, h ezt beírja, újra meghívódik a makró, és most már ezt az értéket osztja 24-gyel, 60-al, majd adja hozzá újra a 6:00:00-t. és ez így megy elvileg a végtelenségig. gyakorlatilag, akármit írok be, mindig 6:00:15-öt kapok egy rövidke homokóra után. Valakinek vmi ötlet erre?
előre is köszi -
Delila_1
Topikgazda
Meg kell alkudnod a körülményekkel, más (pl. C) oszlopba kell beíratnod az összeget. A targetnek az a dolga, hogy új számítással reagáljon a hivatkozott oszlopban történő változásra.
Sub Worksheet_Change(ByVal Target As Excel.Range)
If (Target.Column = 2) Then
sor = Target.Row
Cells(sor, 3) = Cells(sor, 1) + Cells(sor, 2) / 60 / 24
End If
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.
-
félisten
Hali!
Egy checkbox, meg egy tooltip: [Screen]
Szükséges kód a képen: [VBA Macro]DrawingObjects("VALAMI"): itt adod meg az objektum nevét
dozites = Now + TimeSerial(0, 0, 5): itt pedig, hogy hány másodpercig legyen látható(jelen esetben 5 másodperc múlva fog eltűnni a tooltip)Fire.
[ 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)
-
félisten
Hali!
Bocs, csak nagyon rossz valamiért a netem, a forráskódot már nem tudtam beilleszteni...
Munkafüzet1
Private Sub CheckBox1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If ActiveSheet.DrawingObjects("Téglalap feliratnak 1").Visible = False Then
ActiveSheet.DrawingObjects("Téglalap feliratnak 1").Visible = True
Call Timer_ON
End If
End SubModule1
Public Idozites As Double
Sub Timer_ON()
Idozites = Now + TimeSerial(0, 0, 5)
Application.OnTime Idozites, "Tooltip_OFF", , True
End Sub
Sub Tooltip_OFF()
ActiveSheet.DrawingObjects("Téglalap feliratnak 1").Visible = False
End SubFire.
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
- Canva Pro előfizetés - 1 éves
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
- Game Pass Ultimate előfizetések 1 - 25 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN!
- Eredeti Microsoft termékek - MEGA Akciók! Windows, Office Pro Plus, Project Pro, Visio Pro stb.
- Microsoft licencek KIVÉTELES ÁRON AZONNAL - UTALÁSSAL IS AUTOMATIKUS KÉZBESÍTÉS - Windows és Office