Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Daten in bestimmte Zelle schreiben

Daten in bestimmte Zelle schreiben
06.12.2017 09:07:32
Lorenz
Userbild
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in bestimmte Zelle schreiben
06.12.2017 09:22:56
Beverly
Hi lorenz,
z.B. so:
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


Anzeige
AW: Daten in bestimmte Zelle schreiben
06.12.2017 09:43:54
Lorenz
Vielen Dank für die prompte und kompetente Hilfe!
AW: Daten in bestimmte Zelle schreiben
06.12.2017 09:24:12
Burak
Gehen wir davon aus dass die Schaltfläche mit einem Makro namens "Übertragung" verknüpft ist.
Dann wäre der Code:
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.
Anzeige
AW: Daten in bestimmte Zelle schreiben
06.12.2017 09:25:17
Burak
ok hat jmd bereits mit mehr Wissen geantwortet, vergiss meine Antwort :D
AW: Daten in bestimmte Zelle schreiben
07.12.2017 12:52:25
Lorenz
Hallo Beverly,
nochmals vielen Dank für die kompetente und rasche Antwort. Haber aber jetzt doch noch ein kleines Problem. Das Script funktioniert scheinbar nur, wenn sich die Werte in den entsprechenden Zellen befinden. Allerdings sind die Zell-Inhalte berechnet, da funktioniert das Ganze nicht. Kann man das ganze entsprechend modifizieren? Wenn ja, dann schon mal vielen Dank im Voraus. Gruß, Lorenz
Anzeige
AW: Daten in bestimmte Zelle schreiben
07.12.2017 13:04:50
Beverly
Hi Lorenz,
da ich nicht weiß, was du unter "in den entsprechenden Zellen" verstehst, kann ich nur raten - ich gehe mal davon aus, dass du die Datumswerte ab A5 meinst. Ergänze in der folgenden Zeile den Teil nach dem zweiten Komma:
    Set rngDatum = Range("A6:A5000").Find(CDate(Range("A2").Value), lookat:=xlWhole, LookIn:= _
xlValues)


Anzeige
AW: Daten in bestimmte Zelle schreiben
07.12.2017 13:30:07
Lorenz
Du bist ne gute "Raterin"! ;-) Genau das war es! Vielen herzlichen Dank! Funktioniert prima!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Daten in bestimmte Zelle schreiben


Schritt-für-Schritt-Anleitung

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:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Wähle im Menü Einfügen die Option Modul, um ein neues Modul zu erstellen.

  3. 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
  4. Schließe den VBA-Editor und gehe zurück zu Excel.

  5. 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.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht, weil die Werte in den Zellen berechnet sind.

    • Lösung: Stelle sicher, dass Du LookIn:=xlValues in der Find-Methode verwendest, um auch berechnete Werte zu finden.
  • Fehler: „Objektvariable oder With-Blockvariable nicht festgelegt“.

    • Lösung: Überprüfe, ob die Zellen, die Du suchst, tatsächlich existieren und ob die Range korrekt definiert ist.

Alternative Methoden

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.


Praktische Beispiele

Hier sind einige praktische Beispiele, die Dir helfen, Werte in Zellen zu schreiben:

  1. Wert in eine bestimmte Zelle schreiben:

    Range("B2").Value = "Hallo Welt"
  2. Wert in einer Zelle weiterschreiben (z.B. in Zelle B2 den Wert in B3 schreiben):

    Range("B3").Value = Range("B2").Value
  3. 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

Tipps für Profis

  • 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.


FAQ: Häufige Fragen

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.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige