Hy,
ich suche für Excel eine gute Beschreibung, wie man Macros erstellt und die passenden Macrotexte dazu. Und auch die Erklärungen, was diese Texte bedeuten und bewirken.
Würde mich freuen von Euch zu hören.
Hy,
ich suche für Excel eine gute Beschreibung, wie man Macros erstellt und die passenden Macrotexte dazu. Und auch die Erklärungen, was diese Texte bedeuten und bewirken.
Würde mich freuen von Euch zu hören.
Catfish
Der Mensch, der den Berg versetzte, war derselbe, der anfing, kleine Steine wegzutragen.
--chinesisches Sprichwort--
Wenn du in das Thema einsteigen willst poste mal deine Aufgabenstellung. Anhand von Beispielen kann dir sicher weitergeholfen werden,
Video2Brain hat auch einen sehr guten Excel-Makro-Programmierungs-Kurs. Aber ich gebe den Vorrednern recht. Diese Lösungen sind alle sehr indivuell und man kann eine Menge falsch machen.
Hy Scartman! Also erst mal danke für die guten Ratschläge. VBA-Programmierung in 21 Tagen hört sich gut an. Wo finde ich den "Esel"? Ich selber habe nichts dergleichen
Nun ein Beispiel: Ich habe zwei Excelfiles. Das erste ist für Eingaben und die zweite ist zur Archivierung. Wenn ich nun automatisch die Daten aus der Eingabedatei in die erste freie Zeile in der Archivierung speichern möchte funktioniert das nicht mit einfachem Aufzeichnen. Habe ich schon probiert. Das ist zu statisch. Benötige eine Lösung, die sich, wie Ihr schon sagt, individuell anpassen lässt.
Hallo Fred 666: Du hast sehr wohl recht. Man kann vieles verkehrt machen. Aber nur durch Fehler lernt man. Ich möchte einen Kurs für mich hier dahoim.
Catfish
Der Mensch, der den Berg versetzte, war derselbe, der anfing, kleine Steine wegzutragen.
--chinesisches Sprichwort--
Hallo,
hier mal die Lösung deines Problems (quick and dirty)
Sub Archiv()
'
' Archiv
' Kopiert neue Daten in ein ArchivArbeitsblatt
'
'
Workbooks.Open Filename:="C:\DATEN\temp\ARCHIV.xls" 'Archivdatei öffnen
archivzeile = 2 'Startzeile wählen
CurCell = Worksheets("Tabelle1").Cells(archivzeile, 1)
Do Until VarType(CurCell) = 0 'Schleife bis leere Zeile
archivzeile = archivzeile + 1Loop
CurCell = Worksheets("Tabelle1").Cells(archivzeile, 1)
Windows("Daten.xls").Activate 'Daten aktivieren
zeile = 2 'Startzeile wählen
CurCell = Worksheets("Tabelle1").Cells(zeile, 1)
Do Until VarType(CurCell) = 0 ' Solange Zeile nicht leer
If Workbooks("Daten.xls").Worksheets("Tabelle1").Cell s(zeile, 3).Value <> "ok" Then ' Wenn noch nicht archiviertLoop
Workbooks("Archiv.xls").Worksheets("Tabelle1").Cel ls(archivzeile, 1).Value _End If
= Workbooks("Daten.xls").Worksheets("Tabelle1").Cell s(zeile, 1).Value ' Daten übertragen 1 Spalte
Workbooks("Archiv.xls").Worksheets("Tabelle1").Cel ls(archivzeile, 2).Value _
= Workbooks("Daten.xls").Worksheets("Tabelle1").Cell s(zeile, 2).Value ' Daten übertragen 1 Spalte
Workbooks("Daten.xls").Worksheets("Tabelle1").Cell s(zeile, 3).Value = "ok" ' Flag für bereits archiviert setzen
archivzeile = archivzeile + 1
zeile = zeile + 1
CurCell = Worksheets("Tabelle1").Cells(zeile, 1)
Workbooks("Archiv.xls").Close SaveChanges:=True
End Sub
Das Excelarbeitsblatt "Daten.XLS" enthält in der ersten Zeile eine Überschrift und ab Zeile 2 Daten. In den ersten beiden Spalten stehen die Daten, die dritte Spalte wird benutzt um Archivierte Datensätze mit "ok" zu kennzeichnen. Melde dich wenn du noch Fragen hast.
Servus XN00119,
die Hilfe ist obergenial superklasse spitze.
Habe nun noch ein zweites Problem. Oder besser gesagt ist es immer noch das erste. Ich habe ein Arbeitsblatt Annahme und ein Arbeitsblatt Daten in einer Datei. (Hätte ich auch gleich so schreiben können) Könntest Du mir da nochmals helfen! Die zu archivierende Spaltenanzahl ist 6.
Wie kann ich das ebensogut erlernen wie Du hier beschrieben hast?
Gibt es einen Homekurs?
Catfish
Der Mensch, der den Berg versetzte, war derselbe, der anfing, kleine Steine wegzutragen.
--chinesisches Sprichwort--