Excel Problem(VBA)
Results 1 to 3 of 3
  1. #1

    Title
    Veteran
    Join Date
    Mar 2002
    Posts
    21
    Thanks
    0
    Thanked 0 Times in 0 Posts

    Question Excel Problem(VBA)

    Hab ein hier ein Makro das vorher in einem andere sheet war und problemlos lief!dann hab ich das makro in ein anderes sheet kopiert und wollte es über einen button starten! beim kompilieren jedoch erhielt ich folgenden fehler:
    <objekt oder anwendungsorientierten fehler>bei
    While Cells(y, 38) <> "ABSOLUTENDE"
    While Cells(y, 38) <> "Ident Nr."
    Was kann ich tun?
    Für rasche Hilfe wäre ich sehr dankbar!!

    hier noch das ganze makro zum durchschaun!!
    Danke schon mal im voraus!


    Sub ArztbesucheEinfuegen()
    Dim Verz, MADatei, MADateiSheet, ErgDatei As String
    Dim LastArzt, y As Long
    Verz = Cells(1, 3) 'gewünschtes Verzeichnis
    ChDir (Verz)
    MADatei = Cells(2, 3) & ".xls" 'Mitarbeiter-Datei (Importdatei)
    MADateiSheet = Cells(3, 3) 'Mitarbeiter-Datei Sheet-Name
    ErgDatei = Cells(4, 3) & ".xls" 'Ergebnis-Datei

    Workbooks.Open FileName:=Verz & "\" & MADatei
    Range("A1").Select
    Selection.End(xlDown).Select
    LastArzt = ActiveCell.Row
    'Workbooks.Open FileName:=Verz & "\" & ErgDatei

    y = 1
    While Cells(y, 38) <> "ABSOLUTENDE"
    While Cells(y, 38) <> "Ident Nr."
    y = y + 1
    Wend
    y = y + 1
    While Cells(y, 38) <> "ENDE" 'Spalte mit Werten die abgeglichen werden von MADatei
    For z = 1 To LastArzt
    If Workbooks(MADatei).Sheets(MADateiSheet).Cells(z, 1) = Cells(y, 38) Then
    Cells(y, 53) = Workbooks(MADatei).Sheets(MADateiSheet).Cells(z, 2) 'Spalte wo geschrieben wird
    End If
    Next
    y = y + 1
    Wend
    y = y + 1
    Wend

    ActiveWorkbook.Save
    ActiveWindow.Close
    Workbooks(MADatei).Activate
    ActiveWindow.Close
    End Sub

  2. #2

    Title
    Veteran
    Join Date
    Jun 2002
    Posts
    3
    Thanks
    0
    Thanked 0 Times in 0 Posts
    abgesehn mal davon, dass es grauslicher Stil ist (keine Einrückung) - welche Fehlermeldung kam denn?

    lg MJerry

  3. #3
    Wings-of-Glory's Avatar
    Title
    CO-Administrator
    Join Date
    Jan 2002
    Posts
    4,001
    Thanks
    347
    Thanked 504 Times in 266 Posts

    Re: Excel Problem(VBA)

    Er hat zwar eingerückt, aber am Anfang einer Zeile werden Leerzeiichen nicht dargestellt.
    Ich empfehle Programmcodes entweder zwischen den PHP-TAG dieses Forums oder den CODE-TAG dieses Forums zu schreiben.
    Achtung: &lt;&gt; werden als HTML Tags interpretiert und sollten daher so geschrieben werden:
    &amp;lt;&amp;gt;

    Original geschrieben von misanthrop
    Hab ein hier ein Makro das vorher in einem andere sheet war und problemlos lief!dann
    hab ich das makro in ein anderes sheet kopiert und wollte es &uuml;ber einen button
    starten! beim kompilieren jedoch erhielt ich folgenden fehler: <br>
    &lt;objekt oder anwendungsorientierten fehler&gt;bei<br>
    While Cells(y, 38) &lt;&gt; &quot;ABSOLUTENDE&quot;<br>
    While Cells(y, 38) &lt;&gt; &quot;Ident Nr.&quot;<br>
    Was kann ich tun?<br>
    F&uuml;r rasche Hilfe w&auml;re ich sehr dankbar!!
    <p>hier noch das ganze makro zum durchschaun!!<br>
    Danke schon mal im voraus!</p>
    PHP Code:
    Sub ArztbesucheEinfuegen()
    Dim VerzMADateiMADateiSheetErgDatei As String
    Dim LastArzt
    As Long
      Verz 
    Cells(13'gewünschtes Verzeichnis
      ChDir (Verz)
      MADatei = Cells(2, 3) & ".xls" '
    Mitarbeiter-Datei (Importdatei)
      
    MADateiSheet Cells(33'Mitarbeiter-Datei Sheet-Name
      ErgDatei = Cells(4, 3) & ".xls" '
    Ergebnis-Datei
      
      Workbooks
    .Open FileName:=Verz "\" & MADatei
      Range("
    A1").Select
      Selection.End(xlDown).Select
      LastArzt = ActiveCell.Row
      'Workbooks.Open FileName:=Verz & "
    \" & ErgDatei
      
      y = 1
      While Cells(y, 38) <> "
    ABSOLUTENDE"
        While Cells(y, 38) <> "
    Ident Nr."
          y = y + 1
        Wend
        y = y + 1
        While Cells(y, 38) <> "
    ENDE" 'Spalte mit Werten die abgeglichen werden von MADatei
          For z = 1 To LastArzt
            If Workbooks(MADatei).Sheets(MADateiSheet).Cells(z, 1) = Cells(y, 38) Then
              Cells(y, 53) = Workbooks(MADatei).Sheets(MADateiSheet).Cells(z, 2) 'Spalte wo geschrieben wird
            End If
          Next
          y = y + 1
        Wend
        y = y + 1
      Wend
      
      ActiveWorkbook.Save
      ActiveWindow.Close
      Workbooks(MADatei).Activate
      ActiveWindow.Close
    End Sub 
    Otto: Apes don't read philosophy. - Wanda: Yes they do, Otto, they just don't understand
    Beleidigungen sind Argumente jener, die über keine Argumente verfügen.
    «Signanz braucht keine Worte.» | «Signanz gibts nur im Traum.»


    Das neue MTB-Projekt (PO, Wiki, Mitschriften, Ausarbeitungen, Folien, ...) ist online
    http://mtb-projekt.at

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •