seit einiger Zeit versuche ich schon ein VBA zu programmieren - doch trotz vieler Versuche und Recherche in diesem Forum habe ich es noch nicht hinbekommen.
Hier erstmal meine Rohdatei:
https://www.herber.de/bbs/user/150465.xls
In Spalte A ziehen sich Nummern aus einer anderen Datei, wenn dort eine bestimmte Bedingung erfüllt wird. Anschließend füllen sich Spalten B-K automatisch mit Daten aus einer anderen Datei. Spalte Q ist eine Hilfsspalte, in der eine "0"/"x" erscheint, wenn Spalte A leer/befüllt ist. Nun zu meinem Wunsch-Makro: Dieses sollte auf Knopfdruck die Formeln in den Zeilen Werte umwandeln, wenn in Spalte Q in der entsprechenden Zeile in "x" drin ist.
Aktuell habe ich folgende Makros:
Makro 1:
Sub ZeilenMarkieren()
Dim GefBer As Range
Dim SuchBer As Range
Dim SucheNach
Dim Z As Range
SucheNach = "x"
Set SuchBer = Range("Q1:Q" & Columns("Q").EntireColumn.Find("*", searchdirection:=xlPrevious).Row)
For Each Z In SuchBer.Cells
If Z.Value = SucheNach Then
If GefBer Is Nothing Then
Set GefBer = Range(Cells(Z.Row, 1), Cells(Z.Row, 11))
Else
Set GefBer = Application.Union(GefBer, Range(Cells(Z.Row, 1), Cells(Z.Row, 11)))
End If
End If
Next Z
If Not GefBer Is Nothing Then GefBer.Select
End Sub
Makro 2:
Sub Festschreiben()
Dim rngBereich As Range
Set rngBereich = Selection
rngBereich.Value = rngBereich.Value
End Sub
Makro 3:
Sub AlleMakrosAusführen()
Call ZeilenMarkieren
Call Festschreiben
End Sub
Leider funktioniert das zweite Makro nicht wie gewünscht: Entweder es kommt eine Fehlermeldung mit "Das ist bei einer Mehrfachauswahl nicht möglich" (Kopieren und als Werte wieder einfügen) oder untere Zeilen werden mit Daten aus oberen Zeilen befüllt.Hat von euch vielleicht jemand eine funktionierende (und vielleicht schönere) Lösung?
Danke bereits im Voraus!
LG
Max