Schrift
[thread]8282[/thread]

Win32::OLE auf dem pc gesucht: kann zwar modul finden gibt aber mehrere



<< |< 1 2 3 4 ... 10 >| >> 93 Einträge, 10 Seiten
sabrina
 2006-08-30 11:40
#69340 #69340
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
hallo ich bins mal wieder,
mein projektleiter ist wieder da und ich kann mit dem versuch weiter machen excel dateien zu splitten ;)
Nun ich soll Win32::OLE verwenden da das schon auf dem pc liegt, kein thema gute idee.
Jetzt das problem, ich finde mehrere verschiedenen dateinamen mit win :
z.B. win32pm unter lib oder z.B. unter perl->site->lib->Win32->OLE
Es sind noch mehr die ich gefunden habe, oje welches soll ich nur nehmen?
Was mache ich wenn ich weiss welches ich nehmen muss?
Muss ich es irgendwie aktivieren oder installieren?
Wie manche schon gemerkt haben kenn ich mich damit gar nicht aus und bin deshalb sehr gespannt und dankbar fuer  eure loesungsvorschlaege!!
lg sabrina
vayu
 2006-08-30 12:01
#69341 #69341
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
Code: (dl )
use Win32::OLE;


einfach mit use einbinden?
sabrina
 2006-08-30 12:46
#69342 #69342
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
hab es mit use eingebunden aber ich bekomme weder eine ausgabe noch eine fehlermeldung!
kann es sein das man es irgendwie aktivieren muss ???
lg sabrina
renee
 2006-08-30 13:06
#69343 #69343
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
mit use Win32::OLE; sagst Du nur, dass das Modul eingebunden werden soll. Damit sagst Du noch nicht, was Du machen willst.

Schau Dir mal die Beispiele an, die Du unter http://win32.perl.org/wiki/index.php?title=Win32_Perl_Modules bei Win32::OLE findest...
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
sabrina
 2006-08-30 18:34
#69344 #69344
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
ich weis, mit use bereite ich den pc sozusagen darauf vor, das im code "Win32::OLE" vorkommt oder nicht!?
Jetzt muss ich noch ganz normalen code schreiben damit ich eine ausgabe bekomme, soweit richtig?!
Kann mal jemand ueber mein code schauen und mir sagen ob ich was grundsaetzliches falsch mache, und ich einfach noch keinen guten code hinbekomme oder ob ich mal wieder was verwechselt habe?
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#!/usr/bin/perl
use Win32::OLE;
use warnings;
use strict;
my @data;
my $file      = 'lala.csv';
my $columns   = 5;
my $csv_file    = 'zieldatei.csv';

my $excel = Win32::OLE->new();
$excel->add_worksheet('Hoffnung');
open(my $fh,'<',$file) or die $!;               
           
while(my $line = <$fh>) {               
               
               
     
  chomp $line;               

my @array = (split(/[\t\s\\]/,$line))[0..($columns1)];  
  foreach (@array) {
      s/^\s+/;/g;                    
      s/\s+$/;/g;           
  } # foreach

  push(@data,[@array]);
} # while
close ($fh);

my $format = '';
for my $i(0..scalar(@{$data[0]})-1){        
  my $max = find_longest(map{$_->[$i]}@data);
  $format .= '%-'.$max.'s ';
} 
for my $entry(@data){
  print sprintf($format . "<<
",@$entry);
$excel->add_row('Hoffnung',$entry);
}
{
return $excel->output_to_file($csv_file);
return $longest;
}
 my $file2 = 'hoffnung_30_08_2006.csv';
    open($fh,'<',$file);
    open(my $dod,'<',$file2) or die "geht nicht!";
    open($dod,'>',$file2);
 while(<$fh>)
  {
 print  $dod @data;

   sub find_longest{               
               
               
            
  my $longest = 0;
  for(@_){
      my $length = length($_);
      $longest = $length if($length > $longest);
  }
  close ($dod);
  close ($fh);

Es gibt als fehlermeldung nur
Code: (dl )
Execution of excel.pl aborted due to compilation errors 

aber keine ausgabe.
Hab bestimmt was beim print oder return falsch!
Oder liegt es daran das ich die excel befehle nicht fuer OLE nehmen kann aber eigendlich dachte ich OLE waere genau fuer so was, als "ersatz" fuer Spreadsheet::WriteExcel.??
lg sabrina\n\n

<!--EDIT|sabrina|1156949024-->
sabrina
 2006-08-30 18:35
#69345 #69345
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
ich mach mal fuer heute feierabend.
schoenen abend
lg sabrina\n\n

<!--EDIT|sabrina|1156948630-->
vayu
 2006-08-30 18:41
#69346 #69346
User since
2005-01-13
782 Artikel
BenutzerIn
[default_avatar]
schau mal hier hin, hier gibts Doku wie man das Modul richtig benutzt.

http://search.cpan.org/~jdb/libwin32-0.26/OLE/lib/Win32/OLE.pm

du legst dir zwar ein OLE Objekt an, aber sagst ihm nicht was es sein soll ...

Win32::OLE ist kein Aufsatz rein für Excel, sondern ein Modul, mit dem man Zugriff auf die verschiedensten Windows Anwendungen bekommt, deswegen musst du beim new immer gleich noch die Anwendung mit übergeben =>
Code: (dl )
$ex = Win32::OLE->new('Excel.Application') or die $!;


wie genau man jetzt damit weiter arbeitet weiss ich auch nicht :) aber das wird dir der link bestimmt verraten.

ausserdem verwendest du wieder so vielsagende Errormessages wie "geht nicht!" ... gibt doch mal $! mit aus. OK sorry grad übersehen, oben machst, unten wiederum dann nicht mehr :)

/Modedit Smilie repariert\n\n

<!--EDIT|GwenDragon|1157020417-->
sabrina
 2006-08-30 18:45
#69347 #69347
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
danke vayu
aendere es noch schnell und geb dann morgen bescheid obs geht.
danke fuer den link werd ihn morgen erst mal als erstes lesen schoennen abend
lg sabrina
sabrina
 2006-08-31 16:12
#69348 #69348
User since
2006-08-03
264 Artikel
BenutzerIn
[default_avatar]
kenne den link schon, komm jedoch leider nicht ganz klar damit!
hab es leider noch nicht hinbekommen, bin aber schon den ganzen tag am googeln und somit guter hoffnung demnaechst etwas brauchbares zu finden.
Meld mich wenn ich was gefunden habe!
lg sabrina
Ronnie
 2006-08-31 17:02
#69349 #69349
User since
2003-08-14
2022 Artikel
BenutzerIn
[default_avatar]
Du solltest dich vieleicht erstmal auf die Grundlagen konzentrieren. Wie wäre es wenn du mal die Tutorials von strats Seite durcharbeitest, mal im Wiki schaust was das hilfreich sein könnte, dir das Alpaka-Buch 'Einführung in Perl' besorgst und schrittweise durcharbeitest.
Ohne unhöflich sein zu wollen, aber deine Änderung am Skript von renee macht den Eindruck das du kaum verstehst was du da machst - das ist kein Vorwurf, sondern eine Feststellung. Alle haben mal klein angefangen. Programmieren funktioniert aber nicht wie Lego, wo man solange Teile zusammensteckt bis es so aussieht wie es soll und die gewünschte Funktion erfüllt. Deshalb kann ich nur empfehlen: Versuch die Grundlagen sauber zu lernen, dann geht der Rest auf einmal deutlich einfacher.
<< |< 1 2 3 4 ... 10 >| >> 93 Einträge, 10 Seiten



View all threads created 2006-08-30 11:40.