Mit Excel Buffer: Zellen verbinden und Blatt kopieren

6. November 2006 10:34

Hallo zusammen,

weiss jemand ob es möglich ist mit Tab. 370 Excel Buffer mehrere Zellen zu verbinden und ein ExcelBlatt zu kopieren.

Für jede Tips und Hilfe bedanke ich mich ganz herzlich.

Grüße
Tirta

6. November 2006 15:51

Hallo Tirta,

von Haus aus bietet die Tabelle 370 "Excel Buffer" solche eine Funktion nicht. Du kannst, so etwas aber ohne großen Aufwand hinzuprogrammieren. Die globale Variable
Code:
XlRange
stellt die Funktion
Code:
Merge
zur Verfügung. Du könntest eine entsprechende neue Funktion in der Tabelle erstellen, die diese genannte Funktion der globalen Variable benutzt.

Gruß, Marc

6. November 2006 16:45

Danke Marc, werde ich probieren.

Was ist denn mit Excelblat kopieren? Neue Blatt/ Sheet anlegen kenne ich ja. Aber ich möchte jeden Monat aus einem Blatt "Vorlage" einen neuen Blatt anlegen. Hast du Idee?

Vielen Dank.

Grüße
Tirta

6. November 2006 17:01

Das geht mit der globalen Variable "XlWrkSht" und der dazugehörigen Methode "Copy".

Gruß, Marc

8. November 2006 11:09

Ich stehe im Moment vor der gleichen Anforderung, Zellen zu verbinden. Die Globale XLRange und die Methode Merge habe ich gefunden. Wenn ich aber versuche, diese anzusprechen, erhalte ich die Meldung, dass für diese Automation Variable keine Instanz besteht. Muss ich die wirklich zuerst erstellen? Wenn ja, wo?

30. November 2006 16:36

rotsch hat geschrieben:Ich stehe im Moment vor der gleichen Anforderung, Zellen zu verbinden. Die Globale XLRange und die Methode Merge habe ich gefunden. Wenn ich aber versuche, diese anzusprechen, erhalte ich die Meldung, dass für diese Automation Variable keine Instanz besteht. Muss ich die wirklich zuerst erstellen? Wenn ja, wo?


Hi Rotsch,
ich habe 3 neue Felder in Tab. 370 hinzugefügt, z.B: xlColRowIDFrom und xlColRowIDTo mit Typ Text 10, Merge Typ Boolean

In Funktion CreateSheet füge ich eine Zeile noch ein:
IF Merge THEN
XlWrkSht.Range(xlColRowIDFrom + ':' + xlColRowIDTo).Merge := Merge;

Hoffe dass es dir hilft.

P.S. Anstatt neue Felder für xlColRowIDFrom und xlColRowIDTo kann man auch Funktion StartRange und EndRange in Tab. 370 verwenden (vorhanden zumindest in Version 4.0).

Gruss
Tirta

6. Dezember 2007 14:13

Marc Teuber hat geschrieben:Das geht mit der globalen Variable "XlWrkSht" und der dazugehörigen Methode "Copy".

Gruß, Marc


Hat jemand schon mal den Befehl copy verwendet? Ich denke dass es nicht nur einfach XlWrkSht.Copy aufgerufen wird.
Bei mir klappt es leider immer noch nicht.
Kann jemand mir weiterhelfen?

Vielen Dank im voraus.

1. April 2008 22:33

Hallo,

ich habe was Ähnliches benötigt und dabei was hilfreiches als Alternative für die Copyfunktion entdeckt. Diese neue Funktion einfach in die Tabelle einfügen und statt der Orginalfunktion (CreateSheet) rufen.


CreateNewSheet(SheetName : Text[250];ReportHeader : Text[80];CompanyName : Text[30];UserID2 : Text[30])

XlWrkSht := XlWrkBk.Worksheets.Add;
CreateSheet(SheetName,ReportHeader,CompanyName,UserID2);


Damit hat man auch das Tabellenblatt kopiert.