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-ID: 310164

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

Ausgedruckt am: 24.11.2024 um 13:11 Uhr

129813
Lösung 129813 18.07.2016 aktualisiert um 11:07:12 Uhr
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
emeriks
emeriks 18.07.2016 um 11:26:55 Uhr
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.
Enriqe
Enriqe 19.07.2016 um 10:02:08 Uhr
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
Enriqe
Enriqe 19.07.2016 um 10:22:12 Uhr
Goto Top
Hello Highload,

thank you for your comment, it works face-smile
Enriqe
Enriqe 19.07.2016 um 10:29:04 Uhr
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
emeriks
emeriks 19.07.2016 um 10:31:46 Uhr
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
Enriqe
Enriqe 21.07.2016 um 10:58:01 Uhr
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