

Sub Eintrag()
Dim rngName As Range
Dim rngDatum As Range
Set rngName = Rows(5).Find(Range("A1").Value, lookat:=xlWhole)
Set rngDatum = Range("A6:A5000").Find(CDate(Range("A2").Value), lookat:=xlWhole)
If Not rngName Is Nothing And Not rngDatum Is Nothing Then
Cells(rngDatum.Row, rngName.Column) = Range("A3").Value
End If
End Sub
Private Sub Übertragung()
Dim spalte As String
Dim reihe As Integer
If Range("A1").Value = Hans Then
spalte = B
If Range("A1").Value = Peter Then
spalte = C
If Range("A1").Value = Stefan Then
spalte = D
If Range("A2").Value = 01.12.2017 Then
reihe = 7
If Range("A2").Value = 02.12.2017 Then
reihe = 8
If Range("A2").Value = 03.12.2017 Then
reihe = 9
If Range("A2").Value = 04.12.2017 Then
reihe = 10
If Range("A2").Value = 05.12.2017 Then
reihe = 11
Range(Spalte & reihe).Value = Range("A3").Value
End Sub
PS: Ist nicht die optimale Lösung, da du wahrscheinlich mehr als die 5 Tage hast. Dafür müsste man die Zeilen wo der Wert für die Reihe ermittelt wird optimieren, aber das ist das Grundgerüst. Set rngDatum = Range("A6:A5000").Find(CDate(Range("A2").Value), lookat:=xlWhole, LookIn:= _
xlValues)
Um einen Wert in eine bestimmte Zelle in Excel zu schreiben, kannst Du ein VBA-Makro verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
Wähle im Menü Einfügen
die Option Modul
, um ein neues Modul zu erstellen.
Füge den folgenden Code in das Modul ein:
Sub Eintrag()
Dim rngName As Range
Dim rngDatum As Range
Set rngName = Rows(5).Find(Range("A1").Value, lookat:=xlWhole)
Set rngDatum = Range("A6:A5000").Find(CDate(Range("A2").Value), lookat:=xlWhole, LookIn:=xlValues)
If Not rngName Is Nothing And Not rngDatum Is Nothing Then
Cells(rngDatum.Row, rngName.Column) = Range("A3").Value
End If
End Sub
Schließe den VBA-Editor und gehe zurück zu Excel.
Um das Makro auszuführen, drücke ALT + F8
, wähle Eintrag
aus und klicke auf Ausführen
.
Du kannst auch den Wert direkt in die Zelle schreiben, indem Du den Befehl Range("B2").Value = 10
verwendest, um den Wert 10 in die Zelle B2 zu setzen.
Fehler: Das Makro funktioniert nicht, weil die Werte in den Zellen berechnet sind.
LookIn:=xlValues
in der Find
-Methode verwendest, um auch berechnete Werte zu finden. Fehler: „Objektvariable oder With-Blockvariable nicht festgelegt“.
Es gibt auch andere Möglichkeiten, um Werte in Zellen zu schreiben:
Du kannst Excel-Formeln verwenden, um Werte aus einer Spalte in eine Zeile zu übertragen. Zum Beispiel mit der Formel:
=TRANSPOSE(A1:A10)
Eine weitere Möglichkeit ist die Verwendung von Excel-Funktionen wie WENN()
oder SVERWEIS()
, um Werte bedingt in Zellen zu schreiben.
Hier sind einige praktische Beispiele, die Dir helfen, Werte in Zellen zu schreiben:
Wert in eine bestimmte Zelle schreiben:
Range("B2").Value = "Hallo Welt"
Wert in einer Zelle weiterschreiben (z.B. in Zelle B2 den Wert in B3 schreiben):
Range("B3").Value = Range("B2").Value
Werte aus einer Spalte in eine Zeile schreiben:
Dim i As Integer
For i = 1 To 10
Cells(1, i).Value = Cells(i, 1).Value
Next i
Nutze Option Explicit
am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Das hilft, Fehler zu vermeiden.
Verwende benutzerdefinierte Funktionen, um komplexe Berechnungen durchzuführen, bevor Du die Werte in die Zellen schreibst.
Dokumentiere Deinen Code mit Kommentaren, damit Du später nachvollziehen kannst, was jede Zeile bewirken soll.
1. Wie kann ich einen Text in eine Zelle schreiben?
Um einen Text in eine Zelle zu schreiben, kannst Du einfach Range("A1").Value = "Dein Text"
verwenden.
2. Kann ich mehrere Werte in eine Zelle schreiben? Ja, Du kannst mehrere Werte in eine Zelle schreiben, indem Du sie durch ein Trennzeichen wie ein Komma oder einen Zeilenumbruch verbindest. Zum Beispiel:
Range("A1").Value = "Wert1" & vbCrLf & "Wert2"
3. Wie kann ich ein Makro in Excel zuweisen? Um ein Makro zuzuweisen, klicke mit der rechten Maustaste auf eine Schaltfläche oder ein Form-Objekt, wähle „Makro zuweisen“ und wähle das gewünschte Makro aus der Liste aus.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen