Thema Datum  Von Nutzer Rating
Antwort
09.01.2012 16:14:53 Steffi
NotSolved
11.01.2012 00:19:02 Heiko
NotSolved
11.01.2012 10:01:34 Steffi
NotSolved
15.01.2012 22:44:49 Heiko
NotSolved
16.01.2012 09:26:34 Steffi
NotSolved
22.01.2012 22:29:54 Heiko
NotSolved
23.01.2012 10:34:37 Steffi
NotSolved
23.01.2012 21:39:34 Heiko
NotSolved
Rot Datei per Klick öffnen und nur bestimmten Bereich übertragen
24.01.2012 12:32:39 Steffi
NotSolved
24.01.2012 12:33:18 Steffi
NotSolved
29.01.2012 19:06:25 Heiko
NotSolved
29.01.2012 19:06:32 Heiko
NotSolved
01.02.2012 14:14:55 Steffi
Solved

Ansicht des Beitrags:
Von:
Steffi
Datum:
24.01.2012 12:32:39
Views:
1798
Rating: Antwort:
  Ja
Thema:
Datei per Klick öffnen und nur bestimmten Bereich übertragen
Option Explicit

Private Sub cmbAktZBearbeiten_Click()
Dim BearbZ As String, sPath As String

 '============================================================
  'Pfad zum Suchen der Datei im folgenden Ordner:
sPath = "H:\My Documents\TEST_Speicherort\"
  '============================================================

BearbZ = InputBox("Bitte Zeichen der zu  bearbeitenden Datei eingeben.")

If BearbZ = "" Then
MsgBox "Bitte ein Zeichen eingeben!"

ElseIf Dir(sPath & BearbZ & ".xls") = "" Then
MsgBox "Datei mit diesem Zeichen nicht vorhanden."

Else
Workbooks.Open Filename:=sPath & BearbZ & ".xls"
End If

End Sub


Private Sub cmbAktZNeu_Click()
Dim Zeichen
Dim byWert As Byte
Dim rng As Range

byWert = MsgBox("Bei der Angabe eines neuen Zeichens werden alle Eintragungen gelöscht!" & vbCrLf & _
"Soll ein neues Zeichen erfasst werden?", vbYesNo + vbCritical)

If byWert = vbYes Then
Zeichen = InputBox("Bitte das Zeichen eingeben.")
    Sheets("Status").Activate
    Range("E1:H1") = Zeichen
    Call Kopieren
     
xLöschen Sheets(1).Range("D5:H9,D11:H19,D22:H29")
xLöschen Sheets(2).Range("D4:H10,D12:H17")
xLöschen Sheets(3).Range("D4:H8,D11:H15")

Else
Exit Sub
End If

   
End Sub

Private Function xLöschen(rng As Range)
Dim R&, C&, V

For Each V In rng
If Not IsError(V) Then
If LCase(V) = "x" Then
V.Value = ""
End If
End If
Next
End Function


Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
 
    With Target
 If InStr(1, .Address, ":") = 0 Then
        OnChange1 Target, .Row, .Column, .Value
        OnChange2 Target, .Row, .Column, .Value
        End If
    End With
     
Application.EnableEvents = True
End Sub
 
Private Function OnChange1(Target As Range, R&, C&, V)
Dim NichtLeer As Boolean, Wert#
On Error Resume Next
 
    Select Case R
    Case Is > 9, Is < 5
        Exit Function
    End Select
         
    Select Case C
    Case Is > 8, Is < 4
        Exit Function
    Case 4: If V = "x" Then Wert = 1
    Case Else: If V = "x" Then Wert = 2
    End Select
    If V <> "" Then
        Range(Cells(R, 4), Cells(R, 8)).ClearContents
        Target.Value = "x"
    End If
        
    If Wert <> 0 Then
        Cells(6 + R, 3) = Wert
    Else
        If Cells(R, 8).End(xlToLeft).Column < 4 Then
            Cells(6 + R, 3) = ""
        End If
    End If
     
End Function
 
Private Function OnChange2(Target As Range, R&, C&, V)
Dim rng As Range, sumCell As Range
On Error Resume Next
 
    Set sumCell = Cells(R, 11)
    If R < 5 And R < 33 Or V = "" Then
        sumCell = ""
        Exit Function
    End If
 
    Select Case C
    Case Is > 8, Is < 4: Exit Function
    End Select
 
    Set rng = Range(Cells(R, 4), Cells(R, 8))
    rng.ClearContents
    Target.Value = "x"
    sumCell = (8 - C) * Cells(R, 3) 'Summe
 
End Function

So, das wäre der Code komplett. Der Fehler taucht genau bei " If InStr(1, .Address, ":") = 0 Then" auf. Wegen der Datei... Kann sie schon hochladen, muss sie nur umändern wegen den Inhalten und du müsstest mir sagen, wie ich das hier genau machen kann?!

Vielen Dank, dass du dich meinem Problem annimmst, ist wirklich top!!


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
09.01.2012 16:14:53 Steffi
NotSolved
11.01.2012 00:19:02 Heiko
NotSolved
11.01.2012 10:01:34 Steffi
NotSolved
15.01.2012 22:44:49 Heiko
NotSolved
16.01.2012 09:26:34 Steffi
NotSolved
22.01.2012 22:29:54 Heiko
NotSolved
23.01.2012 10:34:37 Steffi
NotSolved
23.01.2012 21:39:34 Heiko
NotSolved
Rot Datei per Klick öffnen und nur bestimmten Bereich übertragen
24.01.2012 12:32:39 Steffi
NotSolved
24.01.2012 12:33:18 Steffi
NotSolved
29.01.2012 19:06:25 Heiko
NotSolved
29.01.2012 19:06:32 Heiko
NotSolved
01.02.2012 14:14:55 Steffi
Solved