enriqe
Goto Top

Zelle in Excel per Makro auswählen

Hallo Admins,

gleich mal vorneweg, von VBA Programmierung habe ich ähnlich viel Ahnung, wie die Kuh vom Eierlegen.
Ich kann halt den Makrorecorder ein und wieder ausschalten, was aber bisher für meine Zwecke gereicht hat.
Dieses Mal reicht es nicht, obwohl ich denke, dass die Aufgabenstellung trotzdem eine sehr einfache ist.
Mit dem Makrorekorder habe ich folgenden Code aufgezeichnet, den ich einer Schaltfläche zuordnen möchte:

Sub FertigDatum()
'
' FertigDatum Makro
'

'
ActiveCell.EntireRow.Select
With Selection.Interior
.PatternColorIndex = xlAutomatic
.Color = 5296274
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("H34").Select
ActiveCell.FormulaR1C1 = "7/18/2016"
Range("H35").Select
End Sub

Der Code funktioniert wie erwartet, aber leider ist es nicht ganz das, was ich brauche.
An zwei Stellen (ich hab sie fett markiert) hätte ich es gerne ein wenig anders:
1. Bei Range hätte ich gerne (wie oben), dass die Zelle H der aktiven Reihe gewählt wird. (egal auf welcher Zelle dieser Reihe der Focus steht)
2. Das Datum soll immer das aktuelle Datum (zum Betätigungszeitpunkt der Schaltfläche) sein und sich danach aber nicht mehr automatisch aktualisieren.

Ich habe "HEUTE()" probiert aber damit wird mir kein Datum in der Zelle angezeigt sondern dieser Text HEUTE(). ?!?
Da ich einmal davon ausgehe, dass das für Euch kein Problem darstellt, hoffe ich auf eine schnelle Antwort und einen, wenn möglich einfachen Tipp, wie ich das erreichen kann.
Vielen Dank schonmal im Voraus
Gruß
Enrique

Content-Key: 310164

Url: https://administrator.de/contentid/310164

Printed on: April 23, 2024 at 21:04 o'clock

Mitglied: 129813
Solution 129813 Jul 18, 2016 updated at 09:07:12 (UTC)
Goto Top
You don't have to select the cell before you set it's value, you can do this directly in one step.
With Cells(ActiveCell.Row, "H")  
    .Value = Date
    .Numberformat = "mm/dd/yyyy"  
End with
Regards
Member: emeriks
emeriks Jul 18, 2016 at 09:26:55 (UTC)
Goto Top
Hi,
Ich habe "HEUTE()" probiert aber damit wird mir kein Datum in der Zelle angezeigt sondern dieser Text HEUTE(). ?!?
Die Formel müsst dann "=Heute()" sein, also inkl. dem =.

E.
Member: Enriqe
Enriqe Jul 19, 2016 at 08:02:08 (UTC)
Goto Top
Hallo Emeriks,

vielen Dank für Deine Antwort. Ich dachte ich fange einmal mit dem Einfachen an und probiere zuerst einmal das Datum aber wenn ich, wie von Dir vorgeschlagen, =Heute() einsetze dann kommt beim Ausführen in der Zelle nur ein: #NAME.
Was mache ich denn falsch? face-sad
Member: Enriqe
Enriqe Jul 19, 2016 at 08:22:12 (UTC)
Goto Top
Hello Highload,

thank you for your comment, it works face-smile
Member: Enriqe
Enriqe Jul 19, 2016 at 08:29:04 (UTC)
Goto Top
Hallo Emeriks,

ich habe nun den Code von Highload mit meinem kombiniert und es läuft.
Vielen Dank für Deine Mühe. Ich denke, dass das mit dem =Heute() nicht funktioniert hat, lag an dem =.
Ich hatte eines vor den "" und dann noch eines mit in die "" gesetzt. Vielleicht war das das Problem.
Wie auch immer, ich denke, aus mir wird sowieso kein Programmierer mehr face-sad
Von daher möchte ich das jetzt auch nicht weiter hinterfragen.
Schön aber, dass es Leute wie Euch gibt, die bereit sind ihr Wissen mit anderen zu teilen. - Finde ich super. Danke dafür

Gruß
Enrique
Member: emeriks
emeriks Jul 19, 2016 at 08:31:46 (UTC)
Goto Top
Was mache ich denn falsch? face-sad
Sorry, habe es nicht erwähnt. Diese Formel musst Du der Zelle dann über ".Formula" oder ".FormulaR1C1" zuweisen und nicht über ".Value".

siehe auch:
https://msdn.microsoft.com/de-de/library/office/ff838835.aspx
https://msdn.microsoft.com/de-de/library/office/ff823188.aspx
Member: Enriqe
Enriqe Jul 21, 2016 at 08:58:01 (UTC)
Goto Top
Hei Emeriks,

obwohl es ja schon läuft, wie ich mir das vorstelle, vielen Dank für diese Info.
Wer weiß, wann ich es einmal gebrauchen kann face-wink

Frohes schwitzen noch face-smile

Gruß
Enrique