Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

(Denk) Fehler bei schleifen Programierung
#1
Sad 
Hallo alle miteinander und einen schönen Sonntag,

könnt mir bitte einer helfen habe ein gewaltigen denk Fehler bei einer For Schleife.
Bin zwar dabei noch zu lernen aber es geht bei mir einfach nicht in den Kopf

Vorab möchte automatisch Palettenzettel erstellen.
Bekomme vom System alles raus was ich brauche haben auch per Formel alles hinbekommen.
Wollte jetzt eine Schleife erstellen der die Nummer in Spalte A (Test) immer beim Palettenzettel in Zeile(B6) automatisch einträgt

Danach sollte der Druckauftrag kommen der die Druckanzahl von Spalte "G" nimmt.

Wäre sehr dankbar für eine Hilfe, werde diese  Codedann auch für anderer Projekte verwenden.

Vielen Dank


Angehängte Dateien
.xlsm   Palettenzettel.xlsm (Größe: 32,21 KB / Downloads: 3)
Antworten Top
#2
Code:
Sub Fornext()

Dim i As Integer, letzte As Integer
letzte = Worksheets("Test").Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To letzte
   With Worksheets("Palettenzettel")
       .Cells(6, 2) = Worksheets("Test").Cells(i, 1)
       .PrintOut copies:=Worksheets("Test").Cells(i, 7)
   End With
Next i

End Sub
Schöne Grüße
Berni
[-] Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:
  • Hendldriver
Antworten Top
#3
Hallo Berni,

Vielen Dank.
Der Ausdruck funktioniert noch nicht ganz, es werden die Seiten nur einmalig ausgedrückt, 
sonst klappt alles.

mfg Günther
Antworten Top
#4
Moin!
Kann ich nicht bestätigen.
Wenn im Bereich G2:Gn Zahlen >1 stehen, werden auch die entsprechenden Ausdrucke getätigt.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
Hallo ertmals Danke für die Unterstützung

Funktioniert fast alles, nur wann jetzt der Wert 0 steht bekomme ich eine Fehler....... 
Na ja dachte ich mir schreibst halt die Formel so um, sollte der Wert 0 bei Blatt Index sein wird die Zelle leer...
Dann hat er ja eh keine Daten mehr.



gedacht getan Fehler weiterhin .... Huh Dodgy


Angehängte Dateien
.xlsm   Palettenzettel Entwurf.xlsm (Größe: 35,1 KB / Downloads: 2)
Antworten Top
#6
Hallo


Was funktioniert :
  • Anzahl der gewünschten Paletten Zettel wird gedruckt.
Problem:

Komme ich auf die Stelle wo 0 oder Leer Mengen der zu drückenden Palettenzettel steht, bekomme ich eine Fehlermeldung.
Hab schon einiges Versucht aber komme nicht auf die Lösung.

zb: If Active Cell < 1 then  oder If Cells(i, 1) = "" Then  usw.....

Vielleicht kann mir von euch einer die Lösung für problem sagen.

Vielen Dank
mfg Günther


Angehängte Dateien
.xlsm   Palettenzettel Forum.xlsm (Größe: 34,39 KB / Downloads: 1)
Antworten Top
#7
Hallo Günther,

versuche es mal so

PHP-Code:
Sub Fornext()

   
Dim i As Longletzte As Long
   letzte 
Worksheets("INDEX").Cells(Rows.Count1).End(xlUp).Row
   
   
For 2 To letzte
      With Worksheets
("Palettenzettel")
         .
Cells(73) = Worksheets("INDEX").Cells(i1)
         If 
Worksheets("INDEX").Cells(i1) = "" Then
            MsgBox 
("Verarbeitung abgeschlossen!")
            Exit 
Sub
         End 
If
         .
PrintOut copies:=Worksheets("INDEX").Cells(i6)  'Druckbefehl Menge steht in Spalte 6
      End With
   Next i

End Sub 
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#8
Verwende Arrays:

PHP-Code:
Sub M_snb()
  
sn sheets("Test").Cells(1).currentregion.resize(,7)

  For 
2 To ubound(sn)
    if 
sn(j,7)>0 then
     with sheets
("Palettenzettel")
 
     .Cells(62) = sn(j,1)
 
     .PrintOut , , sn(j,7)
 
    End With
    end 
if
  
Next
End Sub 
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top
#9
Hallo Steffl

sobald ich den Druckbefehl einfüge bekomme ich einen Laufzeitfehler:
Hab mal den Code auf deinen angepasst

Sub ursprünglicheVersion()

Dim i As Long, letzte As Long
letzte = Worksheets("INDEX").Cells(Rows.Count, 1).End(xlUp).Row

For i = 2 To letzte
  With Worksheets("Palettenzettel")
      .Cells(7, 3) = Worksheets("INDEX").Cells(i, 1)
      .PrintOut copies:=Worksheets("INDEX").Cells(i, 6)  'Druckbefehl Menge steht in Spalte 6
    If Worksheets("INDEX").Cells(i, 1) = "" Then
   
      MsgBox ("Verarbeitung abgeschlossen!")
      Exit Sub
      End If
     
     
  End With
Next i
Antworten Top
#10
Hallo,

ich hatte den PrinOut-Befehl weiter unten stehen.
Gruß Stefan
Win 10 / Office 2016
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste