Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
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

Copy ohne Formeln

Copy ohne Formeln
08.02.2003 15:21:51
Wolfgang
Hallo,
mit folgendem Code kopiere ich einen Teil meines Arbeitsblattes in eine neue Arbeitsmappe. Wie kann ich erreichen, dass nur die Werte übergeben werden und nicht die Formeln?

Set rng = Range("W3:Y5")
Workbooks.Add
rng.Copy Range("A1")

Danke
Gruß
Wolfgang

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Copy ohne Formeln
08.02.2003 15:36:20
Boris

Hi Wolfgang,

so:

Gruß Boris



Re: Copy ohne Formeln
08.02.2003 15:43:59
Wolfgang

Hallo Boris,
Danke dafür. Kann ich noch eine Zusatzfrage stellen: Im Moment, mangels Kenntnis habe ich mir die Werte aus zwei Tabellenblättern in das aktive Blatt (W3:Y5) geladen. Wie stelle ich es an, dass ich mir diesen Umweg spare und die Werte aus den beiden Tabellenbättern direkt in das neue Arbeitsblatt Kopiere?
Tabelle1 A1:A4 und Tabelle2 A1:A4?
Danke
Gruß
Wolfgang

Re: Copy ohne Formeln
08.02.2003 15:59:46
Boris

Hi Wolfgang,

so geht´s:

So werden die Werte in der neuen Datei untereinander in Spalte A geschrieben.

Gruß Boris


Anzeige
Re: Copy ohne Formeln
08.02.2003 16:07:36
Wolfgang

Hallo Boris,
Danke du bis super! Zu diesem Thema eine letzte Zusatzfrage: Workbook add bewirkt ja eine neue Arbeitsmappe. Kann ich diesen Namen, der ja im Moment automatisch erstellt wird, auch individuell bestimmen? (z.Bsp. "KopierteMappe.xls") Es soll sich auf jeden Fall aber immer um eine neue Mappe handeln und nicht um eine bestehende die ich öffnen möchte!
Danke
Gruß
Wolfgang

Re: Copy ohne Formeln
08.02.2003 16:16:04
Boris

Hi Wolfgang,

der Name wird imho erst bestimmt, wenn diese Mappe das erste mal gespeichert wird.
Du kannst natülich auch eine Speicherung per Makro vornehmen.
Das könnte insgesamt so aussehen:

Du wirst direkt aufgefordert, einen Namen zu vergeben, die Mappe wird gespeichert und der Kopiervorgang wird dann fortgeführt.

Gruß Boris

Anzeige
Re: Copy ohne Formeln
08.02.2003 16:32:25
Wolfgang

Hallo Boris,
Danke dafür. Meine Idee war einen Dateinamen automatisch vorzugeben, ohne InputBox. Das gesamte Makro ist als email-Versand gedacht. Die Datei soll beim Absender nur erstellt nicht aber gespeichert werden. Widerrum soll immer der gleiche Dateiname beim Empfänger ankommen. Ich poste Dir mal den gesamten Code:
Sub EmailVersand()
Dim rng1 As Range
Dim rng2 As Range
Dim sAddress As String
Dim sMonat As String
Application.ScreenUpdating = False
'Hier wird der aktuelle Monat für die Betreffzeile eingestellt
sMonat = Range("M1")
'Hier wird die angegebene emailadresse eingestellt
sAddress = Range("E21").Value
'Hier werden die Werte aus Übergabe Tabelle1 eingestellt
Set rng = Worksheets("Tabelle1").Range("D6:G300")
'Hier werden die Wert aus Übergabe Tabelle2 eingestellt
Set rng2 = Workscheets("Tabelle2").Range("D6:D300")
'Legt eine neue Arbeitsmappe an und kopiert die Zellen aus rng in diese
Workbooks.Add
rng1.Copy
Range("A1").PasteSpecial (xlPasteValues)
rng2.Copy
Range("A5").PasteSpecial (xlPasteValues)
Columns.AutoFit
ActiveWorkbook.SendMail sAddress, "Monatsdaten für Monat " & sMonat
ActiveWorkbook.Close savechanges:=False
Application.ScreenUpdating = True
End Sub

Ich hoffe Du hast meine Frage richtig verstanden?
Gruß
Wolfgang

Anzeige
Offen
08.02.2003 16:58:25
Boris

Hi Wolfgang,

du wirst aber an einer Speicherung nicht vorbeikommen.
Du kannst ja im Anschluss die gespeicherte Mappe direkt wieder im Makro löschen lassen.

Statt der Inputbox gibst du einen festen Namen vor, versendest die Mappe und löscht sie dann wieder.

Da müssen jetzt aber nochmal andere helfen, da ich weg muss.

Gruß Boris

Re: Copy ohne Formeln
08.02.2003 19:35:21
Hans W. Hofmann

Hallo zusammen,

das mit copy ist das selbe wie mit select.
Copy/Paste ist ein typisches Relict der Tabellenuser und passt nicht in ein Programmierparadigma. Programmtechnisch ist unter Kopieren eine Zuweisung zu verstehen. Z.B bei einer Integer würde niemand auf die Idee kommen davon ein Kopie mit copy/paste anzulegen, sondern
EineKopie = Original
eine Zuweisung formulieren, um eine Kopie anzulegen. Mit einem Range dagegen ist man wohl gerne mit copy/paste dabei, weil mans in der Tabellenarbeit so gelernt hat.
Der Programmierer sollte aber objektorientiert, direkter und schneller per Zuweisung arbeiten:

Range("B1:C1000").Value = Range("B1:B100).Value

und erzeugt eine Kopie der Werte. Schließlich verfügt das Range-Objekt über einen Zuweisungsoperator. Mit Formula analog.

Was ist Jungs, lieber Hans, nicht mal ein Workshop dazu
und nieder mit copy/paste!

Gruß HW

Anzeige
Re: Copy ohne Formeln
08.02.2003 20:03:15
Boris

Hallo Hans,

das war ja eine flammende Rede...;-)
Natürlich hast du recht, es ergab sich allerdings aus der Fragestellung, und da hab ich es fälschlicherweise nicht direkt korrigiert.
Aber vielleicht wäre es noch hilfreicher gewesen, wenn du auf den offenen Beitrag eine Lösung gepostet hättest, denn ob Copy oder Direktzuweisung: Dieses Problem besteht nicht mehr.

Gruß Boris



Re: Copy ohne Formeln
08.02.2003 20:33:45
Hans W. Hofmann

Naja Boris,
ich hab heute meinen pädagogischen Tag ;-).

Sorry, aber ich hab euren kleinen Monsterthreat nicht zuende gelesen und bin auch grad unter Linux unterwegs, hab keinen Zugriff auf Excel.


Gruß HW

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige