Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
780to784
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
780to784
780to784
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Laufzeitfehler 1004

Laufzeitfehler 1004
12.07.2006 12:14:23
Carsten
Hallo zusammen.
wenn ich mein makro normal über den editor laufenlasse (F5 oder F8) läufts sauber durch sobald ich es hinter ein command button setzte bekomme ich die in den Bildern beschriebenen Fehlermeldungen.
Userbild

Die Datei https://www.herber.de/bbs/user/35011.jpg wurde aus Datenschutzgründen gelöscht

Bitte um Ratschläge
Gruss Carsten

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Laufzeitfehler 1004
12.07.2006 12:20:46
Hugo
Hallo,
2 Möglichkeiten:
- Der Suchbegriff wurde nicht gefunden
- Die TakeFocusOnClick-Eigenschaft des Commandbuttons steht auf True (=Standard = auf False ändern)
Hugo
AW: Laufzeitfehler 1004
12.07.2006 12:53:55
Carsten
Hallo Hugo,
danke für die schnelle Antwort.
(2 Möglichkeiten:
- Der Suchbegriff wurde nicht gefunden)
Der Suchbegtiff hat im Textfile ausdem ich importiere ein Leerzeichen davor das ich nicht wegbekomme bzw. das im manuellen Modus nicht stöhrt.
Den Suchbegriff mit Leerzeichen zu definieren geht leider auch nicht. (pfusch!)
(- Die TakeFocusOnClick-Eigenschaft des Commandbuttons steht auf True (=Standard = auf
False ändern))
Korrekt, habe ich auf false geaendert.
Wie kann ich im Textfile das Blank suchen und loswerden?
Gruss Carsten
Anzeige
AW: Laufzeitfehler 1004
12.07.2006 12:58:38
Hugo
Hallo,
"Wie kann ich im Textfile das Blank suchen und loswerden?"
Mit Suchen+Ersetzen - dann sind aber alle Blanks weg. Alternativ mit der Trim-Funktion - da werden nur überflüssige Leerzeichen entfernt.

Sub weg()
Dim C As Range
For Each C in Activesheet.UsedRange
C = WorksheetFunction.Trim(C)
Next C
End Sub

Hugo
AW: Laufzeitfehler 1004
12.07.2006 14:00:11
Carsten
Hallo Hugo,
danke das problem ist nur das ich die ( _ soll leerzeichen darstellen) _PosNr_________ nicht übers makro suchen kann wegen dem _.
weder beim ersetzen noch bei der find-funktion
und ich ein
Dim _PosNr as string
nicht durchbekomme. Wenn ich einen Parameter erstelle
Dim aPosNr as string
und dann
aPosNr (gleich) _PosNr__________
geht leider auch nicht.
Bei der alernative habe ich in allen used range jetzt je ein C stehen
Das C in der () musste ich ("C")aendern das es ging
liegt es an mir?
Gruss Carsten
Anzeige
AW: Laufzeitfehler 1004
12.07.2006 14:21:24
Hugo
Hallo,
ich versteh kein Wort.
"Das C in der () musste ich ("C")aendern das es ging"
C ist ein Variable für die einzelnen Zellen innerhalb des UsedRange. Also C und nicht "C".
Lad mal ein kleines Beispiel hoch, um weiteres Rätselraten zu vermeiden.
Hugo
AW: Laufzeitfehler 1004
12.07.2006 14:45:59
Carsten
Hallo Hugo,
wenn ich das C in der Klammer so lasse bekomme ich einen Laufzeitfehler,
Userbild
wenn ich das C in der Klammer in Anführungszeichen setzte läuft es durch aber in all meinen Zellen steht dann je ein C

Die Datei https://www.herber.de/bbs/user/35021.jpg wurde aus Datenschutzgründen gelöscht

Anzeige
AW: Laufzeitfehler 1004
12.07.2006 15:10:17
Carsten
Das makro läuft manuell.
Sub txt_importieren()
' Erstellt unter EXCEL2003
' Import einer txt-Dateie in eine EXCEL-Arbeitsmappe
Dim wbCSV As Workbook, wbDatei As Workbook, Blattname As String
Dim strPath As String, BoxTitel As String, BoxPrompt As String
Dim strFilename As String, NameAnfang As String
Dim Farbe As String, I As Integer
Dim Zelle As Range
Dim Bereich0 As Range
Dim Bereich As Range
Dim Blatt As Worksheet
Dim PosNr As String
BoxTitel = "txt-Dateien laden"
strPath = InputBox("Pfad der txt-Dateien", BoxTitel, "C:\temp")
If strPath = "" Then Exit Sub
NameAnfang = InputBox("Name der gesuchten txt-Datei:", BoxTitel, "stueckliste")
If NameAnfang = "" Then Exit Sub
'txt-Dateien laden
'
strFilename = strPath & "\" & NameAnfang & "*.txt"
Workbooks.OpenText strFilename, Origin:=xlMSDOS, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=True, Comma:=False, _
Space:=False, Other:=True, OtherChar:="|", FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 2), Array(4, 1), Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 2), _
Array(9, 2), Array(10, 2), Array(11, 2), Array(12, 2), Array(13, 2), Array(14, 2), Array(15 _
, 2)), TrailingMinusNumbers:=True
' PosNrBereinigen
ActiveCell.Replace What:=" PosNr ", Replacement:= _
"PosNr", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
Cells.Find(What:=" PosNr ", After:=ActiveCell, LookIn _
:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:= _
xlNext, MatchCase:=False, SearchFormat:=False).Activate
' LeerzeichenAusTextLoeschen
'Dim C As Range
'For Each C In ActiveSheet.UsedRange
'C = WorksheetFunction.Trim(C)
'Next C
' PosNr finden
Cells.Find(What:="PosNr", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False).Activate
'BereichMarkierenRelativ()
'Worksheets("stueckliste").Activate
Range(ActiveCell(), ActiveCell.Offset(1000, 12)).Select
Set Bereich = Selection
'selection copy
Bereich.Copy
'Musterstueckliste oeffnen
Windows("Stueckliste_Makro_2006_05_03_Faktor_gueltig.xls").Activate
Range("B1").Select
Selection.PasteSpecial
' LeerzeichenAusZelleEntfernen()
' Dim s As String
' Dim Zelle As Range
Sheets("Stueckliste").Activate
For Each Zelle In Selection
s = Application.Substitute(Zelle, " ", "")
Zelle.Value = s
Next Zelle
End Sub
nur unter dem

Private Sub CommandButton5_Click()
End Sub

bekomme ich eine Fehlermeldung.
in meiner Stueckliste.txt steht:
https://www.herber.de/bbs/user/35022.txt
Bitte um hilfe
Gruss Carsten
Anzeige
AW: Laufzeitfehler 1004
12.07.2006 15:37:20
Carsten
Bitte um hilfe
AW: Laufzeitfehler 1004
12.07.2006 16:09:05
Hugo
Hallo,
nochmal ganz langsam: Mit

Sub weg_mit_den_leerzeichen()
Dim C As Range
For Each C In ActiveSheet.UsedRange
C = WorksheetFunction.Trim(C)
Next C
End Sub

eliminierst du alle überflüssigen Leerzeichen im aktiven Blatt. Nicht mehr und nicht weniger.
Deinen restlichen Code musst du halt drumherum bauen.
Hugo
AW: Laufzeitfehler 1004
12.07.2006 16:19:55
Carsten
Hallo,
es tut mir ja leid, aber
Userbild
Noch offen
12.07.2006 16:37:52
Hugo
Hallo,
keine weitere Idee. Frage noch offen.
Hugo
Anzeige
loesung und danke Hugo
12.07.2006 16:45:48
Carsten
Hallo Hugo,
mit
' LeerzeichenAusTextLoeschen

Sub ZellenTrim()
Dim rngbereich As Range
Dim rngCell As Range
Set rngbereich = ActiveSheet.UsedRange
For Each rngCell In rngbereich
If Left(rngCell, 1) = " " Then
rngCell = WorksheetFunction.Trim(rngCell)
End If
Next
End Sub

gehts.
trotzdem danke
AW: loesung und danke Hugo
12.07.2006 16:59:45
Hugo
Hallo,
ist ja schön, dass es geht. Aber du kannst jede Zelle bedingungslos trimmen. Die Leerzeichenabfrage ist nicht nötig. Alles andere wäre mir neu.
Hugo
AW: loesung und danke Hugo
12.07.2006 17:38:13
Carsten
Ich bin nicht so der fuchs, habe das nur aus
https://www.herber.de/forum/archiv/268to272/t268081.htm
geklaut.
Die kurze Version funktioniert nicht bei mir.
Wenn Du aber noch da bist, ich möchte noch einen fixen Wert PosNr
in dem aktiven Sheet finden und selektieren.
bzw: Hilfeeeeeeeee
https://www.herber.de/bbs/user/35030.xls
Manuell geht das meiste nur über die Buttons nicht.
Gruss Carsten
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige