AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Daten in Excel-Zellen verschieben

Ein Thema von Micha · begonnen am 27. Jan 2005 · letzter Beitrag vom 28. Jan 2005
Antwort Antwort
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#1

Daten in Excel-Zellen verschieben

  Alt 27. Jan 2005, 08:16
Hallo zusammen,

ich hab eine Excel-Datei (aus einem Fremdsystem exportiert) vorliegen, die wie folgt aussieht

Delphi-Quellcode:
Kunde1 Neumarkt / OPf 01.2004 02.2004 06.2004 EUR 23,00 15,00 44,00
Kunde1 Nürnberg 01.2004 02.2004 06.2004 EUR 43,00 45,00 44,00
Kunde2 Neumarkt / OPf 01.2004 02.2004 06.2004 EUR 13,00 25,00 14,00
....

die neue Excel-Tabelle soll dann folgendermaßen aussehen
Delphi-Quellcode:
1.Spalte Kunden Betriebssitz Währung Januar Februar März April Mai Juni ...
 frei Kunde1 Neumarkt / OPf EUR 23,00 15,00 0,00 0,00 0,00 44,00
            Kunde1 Nürnberg EUR 43,00 45,00 0,00 0,00 0,00 44,00
            
            Kunde2 Neumarkt / OPf EUR 13,00 25,00 0,00 0,00 0,00 14,00
            ...

Hab jetz schon ewig rumprobiert, aber ich kriegs einfach nicht hin.

Eine Lösung wäre auch, die Quell-Datei als txt zu speichern oder in ein StringGrid zu laden. Des hätt ich alles schon.

Ich hab ein Problem mit der Schleife, die ich dafür ja wohl auf jeden Fall benötige. Keine Ahnung wie ich das anstellen soll. Problem 1: es können unterschiedliche Monate Daten enthalten. Problem 2: nach jedem Kunden soll eine Lehrzeile sein

Ich kann auch gerne die beiden Dateien als xls hochladen
  Mit Zitat antworten Zitat
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#2

Re: Daten in Excel-Zellen verschieben

  Alt 27. Jan 2005, 08:21
Ich pack gleich nochmal meinen Code dazu, was ich bisher so rumprobiert hab

Delphi-Quellcode:
procedure TForm1.zielclick(Sender: TObject);
var
name : string;
regist : integer;
i,r,c,s,d : integer;
begin
// zieht sich Dateinamen aus edt_dateiname und speichert Namen in Variable name
 name := edt_dateiname2.Text;
// zieht sich Register-Nr aus edt_register und speichert Nummer in Variable regist
 regist := strtoint(edt_register0.text);
// Excel öffnen
 lcid := GetUserDefaultLCID;
 excel := TExcelApplication.Create(Form1);
 excel.Connect;
// Exceldatei laden
 wb := excel.Workbooks.Open(name, emptyParam, emptyParam, emptyParam, emptyParam,
                        emptyParam, emptyParam, emptyParam, emptyParam, emptyParam, emptyParam,
                        emptyParam, emptyParam, lcid);

// erstes Worksheet auswählen
 ws := wb.Sheets[regist] as _WorkSheet;
 excel.DisplayAlerts[GetUserDefaultLCID] := false; // optional


 for s:=0 to ws.Rows.count-1 do
  for d:=0 to ws.Columns.Count-1 do
   for r:=0 to Stringgrid1.RowCount -1 do
    For c:=0 to StringGrid1.ColCount-1 do

  begin
  // ws.Cells.Item[d +1, s +1].value := StringGrid1.Cells[c,r],

   if StringGrid1.cells[4,r] = '01.2004then ShowMessage('test');
   showMessage(stringGrid1.cells[6,2]);
  end; //c,r
// Speichern der aktuellen Datei
  excel.ActiveWorkbook.Save(GetUserDefaultLCID);
 excel.DisplayAlerts[GetUserDefaultLCID] := false; // optional
end;
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Daten in Excel-Zellen verschieben

  Alt 28. Jan 2005, 01:44
HI,

Du könntest auch die Daten in eine 2. Excel Tabelle schreiben.
Dürfte nicht so schwierig sein.
Thomas
  Mit Zitat antworten Zitat
Micha

Registriert seit: 21. Jul 2003
Ort: Neumarkt
263 Beiträge
 
#4

Re: Daten in Excel-Zellen verschieben

  Alt 28. Jan 2005, 07:17
jep, aber ich weiß nicht, wie ich die Schleife bauen soll, dass er mir z. B. immer bei einem neuen Kunden immer ne Leerzeile macht und dass die Beträge wirklich unter dem richtigem Monat stehen
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz