Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1196to1200
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
Inhaltsverzeichnis

@fcs (Franz)

@fcs (Franz)
Heike
Hallo Franz, ich weiß natürlich nicht, ob ich das jetzt hier richtig mache oder ob ich immer allgemein ins Forum schreiben muss. Es geht um den Code von dir, der ja super funktioniert nur ist meinem Chef jetzt eingefallen, dass die Daten in dem Blatt "Uebersicht" nicht in Zeile 2 sondern in Zeile 3 übertragen und später auch wieder gelöscht werden müssen. Leider finde ich das nicht in dem Code. Für Hilfe bin ich sehr dankbar.
Ach ja, im Blatt "Steuerung" gebe ich zwar die 3 ein, aber übertragen wird dann nur Datensatz 2 und 3 und alle folgenden
https://www.herber.de/bbs/user/73263.xlsm
Vielen Dank schon mal im voraus.
Viele Grüße

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: @fcs (Franz)
27.01.2011 00:31:19
fcs
Hallo Heike,
ja so sind sie halt die Chefs. Diese oder jene kleine Anpassung hätte er noch gerne.
Ich war davon ausgegangen, dass die Daten in den Quellblättern und in der Übersicht in der gleichen Zeile beginnen.
Das kannst du jetzt individuell einstellen.
https://www.herber.de/bbs/user/73266.xlsm
Gruß
Franz
AW: @fcs (Franz)
27.01.2011 01:23:09
Heike
Hey, hallo guten Morgen Franz :-)))) na, jetzt schläfst bestimmt schon aber ich habe deinen Code ausprobiert.
Folgendes: In die Übersicht trägt er in Zeile 3 folgende Formel ein (automatisch) =ZEILE()-1 und eigentlich müsste jetzt -2 stehen. Habe auch diese Funktion in deinem Code nicht gefunden. Desweiteren wird beim Einlesen nach jeder Liste eine Leerzeile eingefügt. Wäre immer noch super klasse, wenn du mir da helfen würdest. Danke Franz und
viele Grüße
Anzeige
AW: @fcs (Franz)
28.01.2011 01:49:31
fcs
Hallo Heike,
die Formel =Zeile()-1 wird beim Kopieren der Daten aus den Quellblättern kopiert.
Mit folgender Anpassung am Ende des Makros wird die Formel in Spalte A angepasst.
    Application.ScreenUpdating = True
End With
With wksZiel
.Activate
'Formel für lfd. Nr in Spalte A anpassen
.Range(.Cells(Zeile1_ueb, 1), .Cells(ZeileEin - 1, 1)).FormulaR1C1 = "=ROW()-2"
End With
ActiveWorkbook.Save
Abbrechen:
Set wbQuelle = Nothing: Set wksQuelle = Nothing: Set rQuelle = Nothing
Set wksZiel = Nothing
End Sub

Die Leerzeile nach jeder Liste kann ich mir nicht erklären. Dieses Phänomen tritt bei meinen Testdateien nicht auf. Evtl. ist in den Einzellisten am Ende eine Zeile scheinbar ohne Daten. Zumindest müsste in Spalte A nach der letzten Zeilennummer irgendetwas in der Zelle stehen, so dass das Makro die letzte Datenzeile in Spalte A nicht korrekt berechnet.
Gruß
Franz
Anzeige
AW: @fcs (Franz)
28.01.2011 13:15:12
Heike
Hallo Franz, sorry, dass meine Antwort so lange dauerte aber ich habe alle Varianten ausprobiert, wo dein neuer Code hinkommen soll und natürlich nicht hinbekommen :-((((
Bekomme die Fehlermeldung "End With ohne With". Sorry!
Viele Grüße
Hab's gefunden :-)
28.01.2011 14:04:06
Heike
Hallo Franz, ich habe mich sooooo geärgert, dass ich zu blöd bin, deinen Code einzufügen ... und dann ... hab ich es gefunden, klar, hast ja geschrieben "am Ende".
Dennoch habe ich deinen Code - dank diesem Forum und Archiv -:-) dahingehend geändert, dass beim Schließen des Formulars eine Abfrage erfolgt (falls die Liste nicht gefunden wird). Eigentlich klappt es aber irgendwie muss ich zweimal auf Abbrechen klicken, damit das Formular ohne Speicherung geschlossen wird.
Kannst du da mal drüber gucken? Ja ja, reichst mir den Finger und ich nehme gleich deinen ganzen Arm. Hoffe, dass du nicht genervt bist und freue mich riesig über deine Unterstützung! Viele Grüße
If bDataSaved = False Then
'ggf. Listendatei öffnen
If Workbook_Opened(sFileName:=sNameListe) = False Then
If VBA.Dir(sPfadListe & "\" & sNameListe) "" Then
Set wbListe = Workbooks.Open(Filename:=sPfadListe & "\" & sNameListe, Password:="franz")
If wbListe.ReadOnly = True Then
MsgBox "Datei """ & sNameListe & """ ist zur Zeit von anderem User geöffnet" _
& vbLf & vbLf & "Bitte schliessen der Datei später nochmals versuchen"
Cancel = True
wbListe.Close SaveChanges:=False
End If
Else
If MsgBox("Datei """ & sNameListe & """ zum Exportieren Ihrer Daten kann Excel nicht finden" _
& vbLf & vbLf & "OK = Zurück zum Formular" & vbLf & "Abbrechen = Beenden ohne zu speichern", _
vbCritical + vbOKCancel, "Datenübertragung fehlerhaft!!!") = vbCancel Then
ActiveWorkbook.Close SaveChanges:=False

Exit Sub
End If
Cancel = True
Exit Sub
End If
End If
Set wksSource = ThisWorkbook.Worksheets("Maske")
Anzeige
AW: Hab's gefunden :-)
29.01.2011 22:24:59
fcs
Hallo Heike,
leider erkenne ich nicht welchen Namen die Prozedur hat.
Ich vermute, dass es die Workbook_BeforeClose-Prozedur ist.
In der Prozedur wird mit
ActiveWorkbook.Close SaveChanges:=False

diese Ereignisprozedur dann nochmals aufgerufen.
Ersetze diese Zeile mal durch

Application.SendKeys Keys:="%n" ' Wait:=True

Diese Befehl sendet die Tastenfolge ALT+n an den Dialog mit der Sicherheitsabfrage.
Nach dem Einbau der Zeilen muss du die Datei speichern - nicht einfach schliessen!!
Falls das nicht funktioniert, dann muss ein komplizierterer Weg beschritten werden werden, da man in diesem Fall nicht einfach die Ereignismakros deaktivieren darf.
Gruß
Franz
Anzeige
Suuuuper klappt :-))
30.01.2011 09:15:25
Heike
Hallo Franz,
vielen vielen Dank, es klappt. Ich habe zwar Stunden damit verbracht, aber dank deiner Hilfe hat es zumindest mir wirklich Spaß gemacht. DANKE! Mal sehen, was Chefe Montag sagt und ich hoffe, er hat keine schwerwiegende Änderungswünsche mehr :-)
Wünsche allen einen schönen Sonntag, zumindest meiner ist gerettet!
Viele Grüe
AW: @fcs (Franz)
27.01.2011 01:39:38
Heike
Hey Franz, ich habe eine Idee :-))))) weiß natürlich nicht, ob das einfach ist umzusetzen:
Also, Excel liest ja die ersten 4 Spalten ein (gebe ich ihm ja vor). Kann es im Code so verändert werden, dass er ab Spalte B gesamt (incl. dieser) 3 Spalten einfügt? Ist nur eine Idee, vielleicht hast du ja eine einfachere Lösung. Wäre toll, wenn du dich weiter mit meinem "Problem" beschäftigen würdest.
Viele Grüße
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige