Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: AW: Wert in Zelle schreiben

AW: Wert in Zelle schreiben
22.01.2007 11:44:50
praetorius
Hallo Daniel,
zun?chst mal: so bl?de Kommentare wie die von diesem M?chtegern-Fuzzi sind in diesem Forum v?llig unangebracht. F?r solche Dumpfbacken habe ich nicht das geringste Verst?ndnis!!!
Aber nun zu deinem Problem:
du hast dir viel M?he gegeben, aber es geht auch einfacher.
Den ComboBoxen, der Textbox und dem Commandbutton habe ich mal sprechende Namen gegeben:
ComboBox1 -> mName
ComboBox2 -> mMonat
ComboBox3 -> mTag
TextBox1 -> mBruttoUms
CommandButton1 -> buttonOK
Ersetze deinen kompletten Quellcode mit
Option Explicit

Sub buttonOK_Click()
'-----  Variablendeklaration  ------
Const MWST = 1.19
'----- Beginn  ---------------------
'Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'Datei ?ffnen
Workbooks.Open Filename:="D:\Excel-Forum\" & mName.Text & ".xls"
'Monatstabelle ausw?hlen und Nettoumsatz in Zelle eintragen
With Worksheets(mMonat.Text)
.Activate
.Range("H" & mTag.Value + 5).Value = Format(mBruttoUms.Value / MWST, "0.00")
End With
'Datei wieder speichern und schlie?en
Workbooks(mName.Text & ".xls").Close savechanges:=True
'Bildschirmaktualisierung einschalten (nur der Vollst?ndigkeit halber)
Application.ScreenUpdating = True
End Sub

Die einzelnen Schritte habe ich kommentiert, damit sie nachvollziehbar sind.
good luck
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wert in Zelle schreiben
22.01.2007 13:36:01
Daniel
Super!!!
Ging ohne Probleme.
Danke Praetorius!!!
AW: Wert in Zelle schreiben
22.01.2007 11:44:50
praetorius
Hallo Daniel,
zun?chst mal: so bl?de Kommentare wie die von diesem M?chtegern-Fuzzi sind in diesem Forum v?llig unangebracht. F?r solche Dumpfbacken habe ich nicht das geringste Verst?ndnis!!!
Aber nun zu deinem Problem:
du hast dir viel M?he gegeben, aber es geht auch einfacher.
Den ComboBoxen, der Textbox und dem Commandbutton habe ich mal sprechende Namen gegeben:
ComboBox1 -> mName
ComboBox2 -> mMonat
ComboBox3 -> mTag
TextBox1 -> mBruttoUms
CommandButton1 -> buttonOK
Ersetze deinen kompletten Quellcode mit
Option Explicit

Sub buttonOK_Click()
'-----  Variablendeklaration  ------
Const MWST = 1.19
'----- Beginn  ---------------------
'Bildschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'Datei ?ffnen
Workbooks.Open Filename:="D:\Excel-Forum\" & mName.Text & ".xls"
'Monatstabelle ausw?hlen und Nettoumsatz in Zelle eintragen
With Worksheets(mMonat.Text)
.Activate
.Range("H" & mTag.Value + 5).Value = Format(mBruttoUms.Value / MWST, "0.00")
End With
'Datei wieder speichern und schlie?en
Workbooks(mName.Text & ".xls").Close savechanges:=True
'Bildschirmaktualisierung einschalten (nur der Vollst?ndigkeit halber)
Application.ScreenUpdating = True
End Sub

Die einzelnen Schritte habe ich kommentiert, damit sie nachvollziehbar sind.
good luck
Anzeige
AW: Wert in Zelle schreiben
22.01.2007 13:36:01
Daniel
Super!!!
Ging ohne Probleme.
Danke Praetorius!!!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Wert in Zelle schreiben mit Excel VBA


Schritt-für-Schritt-Anleitung

Um einen Wert in eine Zelle mit VBA zu schreiben, kannst Du den folgenden Beispielcode verwenden. Dieser Code öffnet eine Excel-Datei, wählt ein Arbeitsblatt aus und schreibt einen berechneten Wert in eine bestimmte Zelle.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (deine Datei)" > Einfügen > Modul.
  3. Kopiere den folgenden Code in das Modul:
Sub buttonOK_Click()
    '-----  Variablendeklaration  ------
    Const MWST = 1.19
    '----- Beginn  ---------------------
    'Bildschirmaktualisierung ausschalten
    Application.ScreenUpdating = False
    'Datei öffnen
    Workbooks.Open Filename:="D:\Excel-Forum\" & mName.Text & ".xls"
    'Monatstabelle auswählen und Nettoumsatz in Zelle eintragen
    With Worksheets(mMonat.Text)
        .Activate
        .Range("H" & mTag.Value + 5).Value = Format(mBruttoUms.Value / MWST, "0.00")
    End With
    'Datei wieder speichern und schließen
    Workbooks(mName.Text & ".xls").Close savechanges:=True
    'Bildschirmaktualisierung einschalten
    Application.ScreenUpdating = True
End Sub
  1. Ersetze die ComboBoxen und TextBoxen durch Deine eigenen Steuerelemente mit den entsprechenden Namen.
  2. Starte das Makro, indem Du F5 drückst oder auf den Play-Button klickst.

Häufige Fehler und Lösungen

  • Fehler: Datei nicht gefunden

    • Lösung: Stelle sicher, dass der Dateipfad korrekt ist und die Datei existiert.
  • Fehler: Variable nicht definiert

    • Lösung: Überprüfe, ob alle Variablen, wie mName oder mMonat, korrekt deklariert und initialisiert sind.
  • Fehler: Laufzeitfehler 1004 – Anwendung oder Objektfehler

    • Lösung: Dies kann passieren, wenn das angegebene Arbeitsblatt nicht existiert. Überprüfe die Schreibweise des Arbeitsblattnamens.

Alternative Methoden

Wenn Du keinen VBA-Code verwenden möchtest, kannst Du auch die folgenden Methoden ausprobieren:

  1. Direktes Schreiben in die Zelle: Klicke einfach auf die Zelle und gib den Wert ein.
  2. Formeln verwenden: Du kannst Formeln nutzen, um Werte in Zellen zu berechnen, z.B. =A1+B1.
  3. Excel-Tabellen: Organisiere Deine Daten in Excel-Tabellen und verwende die Tabellennamen in Formeln.

Praktische Beispiele

Hier sind einige praktische Szenarien, in denen Du mit VBA Werte in Zellen schreiben kannst:

  • Buchhaltung: Berechne und speichere monatliche Umsätze in einer Finanzdatei.
  • Datenanalyse: Extrahiere Daten aus einer Datenbank und schreibe sie in ein Excel-Arbeitsblatt.
  • Berichterstattung: Erstelle automatisierte Berichte, indem Du Daten in Zellen einfügst.

Tipps für Profis

  • Verwende Option Explicit am Anfang Deines Codes, um sicherzustellen, dass alle Variablen deklariert sind.
  • Halte Deine Makros modular und gut kommentiert, damit sie leichter zu verstehen sind.
  • Nutze die Debug.Print-Funktion, um den Wert von Variablen während der Ausführung zu überprüfen.

FAQ: Häufige Fragen

1. Wie kann ich eine VBA-Variable in eine Zelle schreiben?
Du kannst dies mit dem Befehl .Value tun, z.B. .Range("A1").Value = meineVariable.

2. Welche Excel-Version benötige ich für VBA?
VBA ist in den meisten modernen Excel-Versionen verfügbar, einschließlich Excel 2010, 2013, 2016, 2019 und Excel 365.

3. Was ist der Unterschied zwischen einem Makro und VBA?
Ein Makro ist eine gespeicherte Abfolge von Befehlen, die in VBA geschrieben ist, um Aufgaben zu automatisieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige