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

Makro: Namen überprüfen und dazufügen

Forumthread: Makro: Namen überprüfen und dazufügen

Makro: Namen überprüfen und dazufügen
Immanuel

Guten Morgen
Ich habe folgendes Problem und weiss leider nicht wie ich es lösen kann:
Ich habe ein file mit fonds, welches wöchentlich aktualisiert wird und auch erweitert wird. Nun habe ich ein file wo ich diese speichere. Wenn ich nun aber einen neuen Fonds habe, so sollte dieser Name automatisch dazugefügt werden.
Also das Makro sollte überprüfen, ob alle Namen in vorhanden sind und sonst die fehlenden in mein File einfügen.
Das File, welches ich runterlade hat folgende Form: Ab Zeile 8 (Spalte A) kommen fondsnamen (alle in Spalte A), aber jeweils die letzten 2 Zeilen sind CHF currency und Datum (sollten also nicht überprüft werden).
Mein File hat die Namen der Fonds auf der Zeile 3. Falls ein Name nicht vorhanden ist, so sollte der neue Name an letzter Stelle in Zeile 3 eingefügt werden.
Ich hoffe ich habe mich einigermassen verständlich ausgedrückt.
Vielen Dank für die Mühe
Immanuel

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Makro: Namen überprüfen und dazufügen
17.03.2008 10:48:54
fcs
Hallo Immanuel,
hier ein Beispiel. Die Datei und Tabellennamen muss du noch anpassen.
Vor dem Start des Makros müssen beide Dateien geöffnet sein.
Gruß
Franz

Sub FondlisteAktualisieren()
Dim wbFondA As Workbook, wbFond3 As Workbook
Dim wsA As Worksheet, ws3 As Worksheet
Dim ZeileA As Long, FondName As Variant, Fond3 As Range
If MsgBox("Sind die beiden Dateien" & vbLf _
& "   FondsinSpalteA.xls" & vbLf & "   FondsinZeile3.xls" & vbLf _
& "geöffnet?", vbYesNo, "Fonds in Dateien abgleichen") = vbYes Then
Set wbFondA = Workbooks("FondsinSpalteA.xls") 'Datei mit Fond-Namen in Spalte A
Set wsA = wbFondA.Worksheets("Tabelle1") 'Tablle mit Fondnamen in Spalte A
Set wbFond3 = Workbooks("FondsinZeile3.xls") 'Datei mit Fond-Namen in Zeile3
Set ws3 = wbFond3.Worksheets("Tabelle1") 'Tablle mit Fondnamen in Zeile3
With wsA
For ZeileA = 8 To .Cells(.Rows.Count, 1).End(xlUp).Row - 2
FondName = .Cells(ZeileA, 1).Value
With ws3
Set Fond3 = .Rows.Find(what:=FondName, LookIn:=xlValues, lookat:=xlWhole)
If Fond3 Is Nothing Then
If IsEmpty(.Cells(3, .Columns.Count)) Then
If IsEmpty(.Cells(3, 1)) Then 'Noch kein Eintrga in Zeile 3 vorhanden
.Cells(3, 1).Value = FondName
Else
.Cells(3, .Columns.Count).End(xlToLeft).Offset(0, 1).Value = FondName
End If
Else
MsgBox "Alle Spalten sind ausgefüllt"
Exit For
End If
End If
End With
Next
End With
Set wbFondA = Nothing: Set wbFond3 = Nothing
Set wsA = Nothing: Set ws3 = Nothing: Set Fond3 = Nothing
End If
End Sub


Anzeige
AW: Makro: Namen überprüfen und dazufügen
Immanuel
Super Vielen Dank. Funktioniert. Habe zwar noch nicht alle Eventualitäten getestet, aber bis jetzt super.
Vielen Dank
;

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

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