Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
216to220
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
216to220
216to220
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Set > copy ohne Formeln

Set > copy ohne Formeln
14.02.2003 15:00:06
Wolfgang
Hallo,
ich bin nervig, aber es ist keine Lösung in Sicht. Melanie, falls Du auch im Forum bist, Deine Lösung ist bestimmt richtig, aber sie bringt mich nicht weiter. Martin sagt die Formel tut was sie soll, auch das ist richtig. Aber ich glaubte mein Problem beschrieben zu haben.
Ich versuchs erneut jetzt mal über die Inhalte der Tabellenblätter:
Im Blatt welches ich übertragen möchte stehen von "D6:D300" Formeln. Diese Formeln erzeugen da wo es passt Werte. Jetzt
möchte ich in ein neues Blatt nur die Werte übernehmen. Mit meinem Code ergänzt durch Anregungen von Euch wird der Zielbereich des neuen Blattes zwar mit den Werten gefüllt, leider aber auch der gesamte Bereich von A1:D300. Jetzt weiß ich nicht genau wie ich es erklären kann, im Moment stehen danach noch intern die Anführungszeichen drin, also "". Bei einer "jungfräulichen" Mappe steht aber sowohl "" als auch "0" drin.
Mein Problem ist es nun, wenn ich die Daten aus der Zieldatei A1:D300 wieder in ein anderes Blatt kopieren möchte, dann füllt er im neuen Blatt den Bereich von A1:D300 aus, obwohl doch nur wenige Werte übergeben wurden.
Hier noch einmal meine Codes:

Set rng1 = Worksheets("Kunden").Range("D6:G300")
Workbooks.Add
rng1.Copy
Range("A1").PasteSpecial (xlPasteValues), Operation:=xlNone, skipBlanks:=True

Hoffentlich bin ich verständlich...
Danke für alle Bemühungen.
Gruß
Wolfgang

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Set > copy ohne Formeln
14.02.2003 15:21:58
Melanie Dierks

Hallo Wolfgang,

habe Dir eine E-Mail geschickt. Ruf doch einfach mal an, dann kann ich das Problem besser verstehen.

Gruß Melanie

Re: Set > copy ohne Formeln
14.02.2003 15:24:53
Martin Beck

Hallo Wolfgang,

das Deine Beschreibung nicht ausreichend klar ist sieht man ja schon daran, daß bisher keine Lösung für ein eigentlich einfaches Problem gepostet wurde. Daher jetzt mal ein paar Nachfragen mit der Bitte um präzise Antworten:

1. In Worksheets("Kunden").Range("D6:G300") stehen irgendwelche Formeln. Zitat: "Diese Formeln erzeugen da wo es passt Werte". Das istnicht korrekt, Formeln erzeugen immer ein Ergebnis, also "Werte". Die Frage ist also, was Du unter "Werte" verstehst und welche Ergebnisse der Formeln aus Deiner Sicht keine "Werte" sind, also beim Kopieren nicht übertragen werden sollen. Handelt es sich z.B. um Leerstrings, Fehlermeldungen? Poste mal eine der Formeln, damit man sich ein Bild machen kann.

2. Was soll beim Einfügen mit den Zellen geschehen, in denen in Deiner Terminologie in D6:G300 keine Werte stehen? Beispiel:

D6: hat Wert => wird in A1 kopiert
D7: hat keinen Wert => soll nicht kopiert werden (oder?)
D8: hat Wert => soll nach A2 oder A3 kopiert werden?

3, Wohin sollen die Zellinhalte kopiert werden (welche Tabelle in welcher Datei). Z.Zt. werden sie in A1 der aktiven Tabelle kopiert.

Gruß
Martin Beck

Anzeige
Re: Set > copy ohne Formeln
14.02.2003 16:13:43
Wolfgang

Hallo Martin,
Danke vorab für die viele Arbeit die ich mache, werde mich bemühen immer präziser zu werden. Jetzt die Antworten:

1.Tabelle "Kunden"
Beispiel für "D6" analog bis "G300"

=WENN(F6="";"";SUMMEWENN(Tabelle1!H7:H100;F6;Tabelle1!G7:G100))

Ergebnis in "D6" = 5000
Ergebnis in "D7" = 3200
Ergebnis in "D8" = 150
von "D9" bis "G300" keine Summe errechnet deshalb "".

2. Jetzt möchte ich den Bereich "D6:G300" mit Makro in eine neue Arbeitsmappe kopieren.
Set rng1 = Worksheets("Kunden").Range("D6:G300")
Workbooks.Add
rng1.Copy
Range("A1").PasteSpecial (xlPasteValues), Operation:=xlNone, skipBlanks:=True

3. Als nächstes öffnet ein anderer User diese neue Arbeitsmappe ("Mappe1") und per Makro sollen die Werte aus "A1:D300" in seine Zieldatei "Mitarbeiter" übernommen werden ab der ersten freien Zeile.

Workbooks.Open Filename:="Mappe1.xls"
Set rng1 = Worksheets("Tabelle1").Range("A1:D300")
Workbooks("Firma.xls").Activate
Worksheets("Mitarbeiter").Activate
intRow = 1
Do While Left(Cells(intRow, 1), 7) <> ""
intRow = intRow + 1
Loop
rng1.Copy
Range(Cells(intRow, 4).Address).PasteSpecial Paste:=xlValues

4. Sein Arbeitsblatt "Mitarbeiter" sieht nach der Übertragung dann so aus, dass die Ergebnisse nach der letzten Zeile eingefügt wurden, also wie unter 1.) beschrieben mit 5000, 3200, 150

5. Jetzt kommts!!!
In seinem Arbeitsblatt "Mitarbeiter" stehen auch Formeln die die Summen die gerade übergeben wurden weiterverarbeiten. Bis zur o.g. Zahl, 150 als letzte eingefügte, auch alles klar aber danach werden für den Restbereich auch noch die Leerzeilen mit übergeben und die werden bei der Formelauswertung im Arbeitsblatt als Fehler deklariert.

Zusammenfassend für Dich wahrscheinlich eine Kleinigkeit, aber dieses ist mein erstes Makro!!
Ich möchte also erreichen, dass in diesem Beispiel nur die Summen 5000, 3200 und 150 übergeben werden und danach Schluß ist.

Hoffentlich ist es jetzt verständlicher.
Auf jeden Fall vielen, herzlichen Dank für alle Mühen.
Gruß
Wolfgang

Anzeige
Re: Set > copy ohne Formeln
14.02.2003 16:53:14
Martin Beck

Hallo Wolfgang,

das Problem ist, daß Du mit der Zeile

Set rng1 = Worksheets("Kunden").Range("D6:G300")

der rng1 dem kompletten Bereich zuweist und diesen mit

rng1.Copy

kopierst. Du müßtest aber zunächst herausfinden, in welcher Zeile die letzte Zahl steht (in Deinem Beispiel die Zeile 8) und dann den entsprechenden Bereich rng1 zuweisen. Ich nehme mal an, daß wenn die erste "quasi-leere" Zelle in Spalte D auftaucht

1. danach keine Zahlen mehr kommen

2. und die Spalten E:G ab dieser Zelle auch "quasi-leer" sind.

Unter diesen Annahmen kannst Du folgendes versuchen:

statt

Set rng1 = Worksheets("Kunden").Range("D6:G300")
Workbooks.Add
rng1.Copy

Gruß
Martin Beck

Anzeige
Re: Set > copy ohne Formeln
14.02.2003 17:05:17
Wolfgang

Hallo Martin,
ich dachte mir schon so etwas. Du hast es jetzt auf den Punkt gebracht. Ich war aus Unwissenheit auf dem Irrweg, dass es auch anders zu lösen gewesen wäre.
Herzlichen Dank für die Lösung, werde sie gleich ausprobieren.
Gruß
Wolfgang

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige