#WERT!

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: #WERT!
von: dieter
Geschrieben am: 16.11.2003 14:22:55

14.11.2003

Hallo VBA Spezialisten,
ich habe ein Problem mit "#WERT!" wie folgt:
Über ein VBA Makro lese ich eine Kunden.TXT Datei ein und konvertiere diese in Excel.
Es entsteht dabei, wenn die Kundennamen zuende sind, in den Folgezellen der Eintrag "#WERT!". Dieser Eintrag kommt durch einenen Formelbezug.
Nun meine Frage: Wie kann ich per VBA Makro diesen Eintrag "#WERT!" so löschen,
damit in diesen Zellen nichts mehr steht, bw. damit diese leer sind.

Ein Versuch mit einem VBA Makro mit dem Inhalt "ERSETZEN" von "#WERT" mit "" bringt keinen Erfolg.

Würde mich über Hilfestellung freuen. Schon vielen Dank für Bemühungen.
Anbei mein ganzes VBA Makro zur Übersicht.
' Kdliste.txt aus JOURNAL einlesen und Sonderzeichen ersetzen


Sub TxtEinlesen()
Application.ScreenUpdating = False
    
    MsgBox "Die JOURNAL - Kundenliste zur Konvertierung auswählen." & Chr(13) & "Die Datei muss den Namen ""Kdliste.txt"" haben!", vbkonly, "MxInfo"
    
    On Error Resume Next
        Quelle = Application.GetOpenFilename("TXT-Dateien , *.TXT")
         Workbooks.OpenText Filename:=Quelle, Origin:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
            xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, Semicolon _
             :=False, Comma:=False, Space:=False, Other:=False, FieldInfo _
             :=Array(1, 1)
              
' Konvertierung beginnt
    
    ActiveCell.FormulaR1C1 = "Aktuelle Kundenliste"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = ""
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "=NOW()"
    Range("A2:C5").Select
    Selection.Delete Shift:=xlUp
    Columns("D:J").Select
    Selection.ClearContents
    Cells.Select
    With Selection.Font
        .Name = "Arial"
        .Size = 8
        .Strikethrough = False
        .Superscript = False
        .Subscript = False
        .OutlineFont = False
        .Shadow = False
        .Underline = xlUnderlineStyleNone
        .ColorIndex = xlAutomatic
    End With
    Selection.Columns.AutoFit
' Nicht benötigte Leerzeilen und Seitenkopfbeschriftungen
' aus der konv. JOURNALliste werden entfernt. 51 Zeilen Kunden 6 Zeilen löschen.
         
         Range("A2").Select
    Selection.Columns.AutoFit
        Range("A58:C63").Select
    Selection.Delete Shift:=xlUp
        Range("A114:C119").Select
    Selection.Delete Shift:=xlUp
        Range("A170:C175").Select
    Selection.Delete Shift:=xlUp
        Range("A226:C231").Select
    Selection.Delete Shift:=xlUp
        Range("A282:C287").Select
    Selection.Delete Shift:=xlUp
        Range("A338:C343").Select
    Selection.Delete Shift:=xlUp
        Range("A394:C399").Select
    Selection.Delete Shift:=xlUp
        Range("A450:C455").Select
    Selection.Delete Shift:=xlUp
        Range("A506:C511").Select
    Selection.Delete Shift:=xlUp
        Range("A562:C567").Select
    Selection.Delete Shift:=xlUp
        Range("A618:C623").Select
    Selection.Delete Shift:=xlUp
        Range("A674:C679").Select
    Selection.Delete Shift:=xlUp
        Range("A730:C735").Select
    Selection.Delete Shift:=xlUp
        Range("A786:C791").Select
    Selection.Delete Shift:=xlUp
        Range("A842:C847").Select
    Selection.Delete Shift:=xlUp
        Range("A898:C903").Select
    Selection.Delete Shift:=xlUp
        Range("A954:C959").Select
    Selection.Delete Shift:=xlUp
        Range("A1010:C1015").Select
    Selection.Delete Shift:=xlUp
        Range("A1066:C1071").Select
    Selection.Delete Shift:=xlUp
        Range("A1122:C1127").Select
    Selection.Delete Shift:=xlUp
        Range("A1178:C1183").Select
    Selection.Delete Shift:=xlUp
        Range("A1234:C1239").Select
    Selection.Delete Shift:=xlUp
        Range("A1290:C1295").Select
    Selection.Delete Shift:=xlUp
        Range("A1346:C1351").Select
    Selection.Delete Shift:=xlUp
        Range("A1402:C1407").Select
    Selection.Delete Shift:=xlUp
        Range("A1458:C1463").Select
    Selection.Delete Shift:=xlUp
        Range("A1514:C1519").Select
    Selection.Delete Shift:=xlUp
        Range("A1570:C1575").Select
    Selection.Delete Shift:=xlUp
        Range("A1626:C1631").Select
    Selection.Delete Shift:=xlUp
        Range("A1682:C1687").Select
    Selection.Delete Shift:=xlUp
        Range("A1738:C1743").Select
    Selection.Delete Shift:=xlUp
        Range("A1794:C1799").Select
    Selection.Delete Shift:=xlUp
        Range("A1850:C1855").Select
    Selection.Delete Shift:=xlUp
        Range("A1906:C1911").Select
    Selection.Delete Shift:=xlUp
        Range("A1962:C1967").Select
    Selection.Delete Shift:=xlUp
        Range("A2018:C2023").Select
    Selection.Delete Shift:=xlUp
        Range("A2074:C2079").Select
    Selection.Delete Shift:=xlUp
        Range("A2130:C2135").Select
    Selection.Delete Shift:=xlUp
        Range("A2186:C2191").Select
    Selection.Delete Shift:=xlUp
        Range("A2242:C2247").Select
    Selection.Delete Shift:=xlUp
        Range("A2298:C2303").Select
    Selection.Delete Shift:=xlUp
        Range("A2354:C2359").Select
    Selection.Delete Shift:=xlUp
        Range("A2410:C2415").Select
    Selection.Delete Shift:=xlUp
        Range("A2466:C2471").Select
    Selection.Delete Shift:=xlUp
        Range("A2522:C2527").Select
    Selection.Delete Shift:=xlUp
        Range("A2578:C2583").Select
    Selection.Delete Shift:=xlUp
        Range("A2634:C2639").Select
    Selection.Delete Shift:=xlUp
        Range("A2690:C2695").Select
    Selection.Delete Shift:=xlUp
        Range("A2746:C2751").Select
    Selection.Delete Shift:=xlUp
        Range("A2802:C2807").Select
    Selection.Delete Shift:=xlUp
        Range("A2858:C2863").Select
    Selection.Delete Shift:=xlUp
        Range("A2914:C2919").Select
    Selection.Delete Shift:=xlUp
        Range("A2970:C2975").Select
    Selection.Delete Shift:=xlUp
        Range("A3026:C3031").Select
    Selection.Delete Shift:=xlUp
        Range("A3138:C3143").Select
    Selection.Delete Shift:=xlUp
        Range("A3194:C3199").Select
    Selection.Delete Shift:=xlUp
        Range("A3250:C3255").Select
    Selection.Delete Shift:=xlUp
        Range("A3306:C3311").Select
    Selection.Delete Shift:=xlUp
        Range("A3362:C3367").Select
    Selection.Delete Shift:=xlUp
        Range("A3418:C3423").Select
    Selection.Delete Shift:=xlUp
        Range("A3474:C3479").Select
    Selection.Delete Shift:=xlUp
        Range("A3530:C3535").Select
    Selection.Delete Shift:=xlUp
        Range("A3586:C3591").Select
    Selection.Delete Shift:=xlUp
        Range("A3642:C3647").Select
    Selection.Delete Shift:=xlUp
        Range("A3698:C3703").Select
    Selection.Delete Shift:=xlUp
        Range("A3754:C3759").Select
    Selection.Delete Shift:=xlUp
        Range("A3810:C3815").Select
    Selection.Delete Shift:=xlUp
        Range("A3866:C3871").Select
    Selection.Delete Shift:=xlUp
        Range("A3922:C3927").Select
    Selection.Delete Shift:=xlUp
        Range("A3978:C3983").Select
    Selection.Delete Shift:=xlUp
        Range("A4034:C4039").Select
    Selection.Delete Shift:=xlUp
        Range("A4090:C4095").Select
    Selection.Delete Shift:=xlUp
' Sonderzeichen werden ersetzt
    Cells.Replace What:="", Replacement:="ü", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False
       Cells.Replace What:="”", Replacement:="ö", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False
            Cells.Replace What:="„", Replacement:="ä", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False
            Cells.Replace What:="á", Replacement:="ß", LookAt:=xlPart, SearchOrder _
                :=xlByRows, MatchCase:=False
MsgBox "Alle ersetzbaren Sonderzeichen wurden korrigiert > ä, ö, ü, ß <" & Chr(13) & "Alle Leerzeichen bis auf eines und" & Chr(13) & "alle Kundenummern werden entfernt" & vbkonly, "MxInfo"
'    Columns("C:C").Select
'    With Selection
'        .HorizontalAlignment = xlLeft
'        .VerticalAlignment = xlBottom
'        .WrapText = False
'        .Orientation = 0
'        .AddIndent = False
'        .IndentLevel = 0
'        .ShrinkToFit = False
'        .ReadingOrder = xlContext
'        .MergeCells = False
'    End With
' Kundenliste.txt in Liste.xls einfügen
    Windows("BesuchePerAnno.xls").Activate
    Sheets("Listen").Visible = True
    ActiveSheet.Unprotect
    Windows("Kdliste.txt").Activate
    Range("A2:A3000").Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
        OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    Selection.Copy
    Windows("BesuchePerAnno.xls").Activate
    Sheets("Listen").Visible = True
    Sheets("Listen").Unprotect
    Sheets("Listen").Activate
    Range("F4").Select
    
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("F3").Select
        
        Cells.Replace What:="#WERT!", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
        
        Application.CutCopyMode = False
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
    ActiveWindow.SelectedSheets.Visible = False
    Range("A8").Select
' KundelisteTxT entfernen
    Windows("Kdliste.txt").Activate
    ActiveWorkbook.Close
' Tabelle "BesuchePerAnno.xls" wird aktiviert
    Windows("BesuchePerAnno.xls").Activate
    Range("A8").Select
Application.ScreenUpdating = True
MsgBox "Die Kundenliste wurde komplett aktualisiert ", vbkonly, "MxInfo"
End Sub

Bild


Betrifft: Wo taucht das denn auf....
von: Ramses
Geschrieben am: 16.11.2003 16:49:39

Hallo

ich sehe in deinem Code keine einzige Zeile in der eine Formel auftaucht.
und wenn du den Wert mit "" ersetzt, ist die Formel in deiner ursprünglichen Tabelle wohl überflüssig,.. das heisst du kannst sie eigentlich gleich löschen.
Alternativ die Formel so aufbauen, dass keine Fehlermeldung existiert.

Wie lautet die Formel denn ?

Gruss Rainer


Bild


Betrifft: AW: Wo taucht das denn auf....
von: Jörg Gradert
Geschrieben am: 16.11.2003 20:20:27

Hallo Rainer,
ich nehme an dass die Formel im Tabellenblatt steht.

Gruss Jörg

Hallo Dieter,
wie ist es hiermit?
Schreibe =deineFormel um in
WENN(ISTFEHLER(deineFormel);"";deineFormel)

Dank im Voraus ist zwar schön, aber das Forum lebt auch von Rückmeldungen.

Gruss Jörg


Bild


Betrifft: AW: Wo taucht das denn auf....
von: dieter
Geschrieben am: 16.11.2003 20:57:19

Hallo Jörg, hallo Rainer,

erst mal danke für Rückantwort.
Der Text in einem Tabellenblatt - den ich entfernen will - ist wie folgt:

Zarif, Teppich
Zur Taube, Gasts
#WERT!
#WERT!
#WERT!

Hier steht nun der Text "#WERT!". Diesen will ich in dem Tabellenblatt per VBA Makro entfernen.

Da ich leider berufliche ziemlich angespannt bin, kann meine Rückmeldung evtl. eine Woche dauern. Evtl gibt es ja eine Lösung.

Danke für Hilfe und Gruss
Dieter


Bild


Betrifft: NOCH OFFEN
von: Jörg Gradert
Geschrieben am: 16.11.2003 23:29:42

Hallo Dieter,
was liefert denn #WERT! ?
ich habe angenommen eine Formel in der betroffenen Zelle.
Leider nimmst Du zu meinem Lösungsvorschlag ohne VBA gar keine Stellung.
Wenn ich mir deinen Level anschaue, denke ich, dass Du in VBA weiter bist, als ich.
Da kann ich dir wohl eher nicht weiterhelfen.

Gruss Jörg


Bild

Beiträge aus den Excel-Beispielen zum Thema " Suchfunktion erstellen"