Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel-Zelle wird per VBA gefüllt = #Wert!

Excel-Zelle wird per VBA gefüllt = #Wert!
29.05.2019 09:09:47
Achim
Guten Morgen,
ich habe in Excel eine Liste mit Projekten und einer Spalte "Quality Check", die ich mit VBA fülle:
- In einer Schleife gehe ich zeilenweise durch die Tabelle und vergleiche die Daten jedes Projektes, um hinweiswürdige Fehler zu erkennen.
- Zu jedem Hinweis schreibe ich einen Kommentar in die Spalte "Quality Check".
- Da es zu einem Projekt mehrere (beliebig viele) Hinweise geben kann, geschieht dies zeilenweise (Zeichen 10).
- Das siezt dann so aus:

'[1GM01] No FDD in Gate 3
[2GM01] Milestone 'Mech. Compl. FC' not filled
[2GM02] Milestone 'Techn. Compl. FC' not filled
[2GM03] Milestone 'All Invoices received FC' not filled
[3FF01] Forecast not filled

Wenn das Skript fertig ist und ich dann die Spalte Quality Check betrachte, finde ich in einzelnen Zellen den Fehlerwert #Wert!
Das Zellenlimit von 32.000 Zeichen spielt hier keine Rolle.
Hat jemand eine Idee, bitte?
Gruß,
Achim

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zeig doch mal das makro
29.05.2019 09:15:03
UweD
AW: Zeig doch mal das makro
29.05.2019 09:55:38
Achim
Hier ein Auszug aus dem Makro mit nur einem Hinweis. Davor und danach gibt es weitere Meldungen.

Private Sub CommandButton1_Click()
Dim wks1, wks2, wks3 As Worksheet
Dim toFind As String
Dim found As Range
Dim LastRow As Long
Set wks1 = Worksheets("Project List")
Set wks2 = Worksheets("Forecast")
Set wks3 = Worksheets("CapPlan")
'Für mehr Speed auf manuelle Berechnung stellen und ScreenUpdate abschalten
Application.Calculation = xlCalculationManual
Application.ScreenUpdating = False
'*** Wo ist die Projektliste zu Ende? ***
LastRow = wks1.Range("B65536").End(xlUp).Row 'Unterste Zeile feststellen
'wo ist die Spalte 'Quality Check'?
iCol_QC = Application.Match("Quality Check", wks1.Rows(4), 0)
For I = 5 To LastRow
'No FDD in Gate 3   *** BEISPIEL EINER MELDUNG ***
If wks1.Cells(I, Application.Match("Item Status", wks1.Rows(4), 0)) >= "b. Plan" _
And wks1.Cells(I, Application.Match("Item Status", wks1.Rows(4), 0)) 

Anzeige
AW: Zeig doch mal das makro
29.05.2019 10:33:00
UweD
Hallo
wenn #Wert! in der Zelle steht, dann wird die Eingabe als Formel erfolgen, die dann zu einem Fehler führt.
Du zeigst in dem Beispiel, dass du mit ' (Umschalten #) beginnst.
Das wäre ja auch korrekt, dann wird Alles danach als Text interpretiert.
Die Stelle, wo das ' setzt, finde ich im Makro aber nicht.
so evtl.....

wks1.Cells(I, iCol_QC) ="'"
For I = 5 To LastRow
'No FDD in Gate 3   *** BEISPIEL EINER MELDUNG ***
If wks1.Cells(I, Application.Match("Item Status", wks1.Rows(4), 0)) >= "b. Plan" _
And wks1.Cells(I, Application.Match("Item Status", wks1.Rows(4), 0)) 

Anzeige
AW: Zeig doch mal das makro
29.05.2019 13:49:47
Achim
Hi Uwe,
das Hochkomma kommt aus einer SAP-BW-Query. Wie & warum kann ich nicht erklären ...
Ich konnte nun das Problem weiter einkreisen:
- Nicht die Schleife ist die Ursache meines Problems.
- Ich habe bisher die Zelle mit einem Zeilenumbruch (Zeichen 10) begonnen ...
- ... und am Ende des Skripts in einer weiteren Schleife den ersten Zeilenumbruch wieder rausgelöscht
'Aufräumen: erste Leerzeile in QC-Feldern löschen
For i2 = 5 To LastRow
'wks1.Cells(i2, iCol_QC) = Application.Substitute(wks1.Cells(i2, iCol_QC), Chr(10), "", 1)
Next i2
- Genau HIERBEI ist der Fehlerwert #Wert! bei ca. 1% der Projekte entstanden
- Ich kann nicht sagen warum
- Ich verzichte nun auf den führenden Zeilenumbruch und hänge ihn an jede einzelne Meldung hinten an.
- Somit spare ich mir die auffällig gewordene Funktion 'Application.Substitute'
Vielen Dank, das Thema ist erledigt :-)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige