von komma4 » Mo, 27.06.2011 06:55
Willkommen im Forum
rici35 hat geschrieben:Ich schaffe das glaub ich nicht.
Nicht gleich verzweifeln.
Hatte gerade ein paar Minuten Zeit... kleine Fingerübung zum Frühstück
Code: Alles auswählen
Dim sPfad as String
Dim sPfadTrenner as String
Sub de49091
' 2011-06-27
' Vorbereitung
' ---------------------------------------
' plattform-spezifischer Pfadtrenner
sPfadTrenner = getPathSeparator()
' Hilfsbibliothek
If NOT GlobalScope.BasicLibraries.isLibraryLoaded( "Tools" ) Then
GlobalScope.BasicLibraries.loadLibrary( "Tools" )
End if
' Pfad aller Dateien aus Dateinamen der ODS
sPfad = DirectoryNameoutofPath( ThisComponent.getURL , sPfadTrenner )
iSpalte = 0 'Spaltenindex A
iZeile = 1 'Index der Startzeile 2
' Name des Blatts zum Arbeiten
sBlatt = "Sheet1"
' Objekt des Tabellenblatts
oBlatt = ThisComponent.Sheets().getByName( sBlatt )
' ersten Inhalt holen
sTestinhalt = oBlatt.getCellByPosition( iSpalte, iZeile ).getString()
' ---------------------------------------
' Schleife, solange Inhalt
While NOT ( Len( sTestinhalt ) = 0 )
' Objekt Ziel
oZielZelle = oBlatt.getCellByPosition( iSpalte + 1 , iZeile )
'Funktion zum Setzen des Dateiinhaltes
oZielZelle.setString( getTextDateiInhalt( sTestinhalt ) )
' nächste Zeile
iZeile = iZeile + 1
' Inhalt der nächsten Zeile
sTestinhalt = oBlatt.getCellByPosition( iSpalte, iZeile ).getString()
Wend
End Sub
' ---------------------------------------
Function getTextDateiInhalt( sName as String ) as String
sInhaltsDatei = sPfad & sPfadTrenner &sName & ".txt"
If FileExists( sInhaltsDatei ) Then
' ---------------------------------------
' Textdatei lesen - aus der F1 Hilfe
iNumber = Freefile
Open sInhaltsDatei For Input As #iNumber
While not eof(#iNumber)
Line Input #iNumber, sZeile
If sZeile <>"" then
sMsg = sMsg & sZeile & chr(13)
end if
wend
Close #iNumber
' ---------------------------------------
getTextDateiInhalt = sMsg
Else
getTextDateiInhalt = "*** Datei nicht gefunden ***"
End If
End Function
Kommst Du damit zurecht?
Willkommen im Forum
[quote="rici35"]Ich schaffe das glaub ich nicht.[/quote]
Nicht gleich verzweifeln.
Hatte gerade ein paar Minuten Zeit... kleine Fingerübung zum Frühstück 8)
[code]Dim sPfad as String
Dim sPfadTrenner as String
Sub de49091
' 2011-06-27
' Vorbereitung
' ---------------------------------------
' plattform-spezifischer Pfadtrenner
sPfadTrenner = getPathSeparator()
' Hilfsbibliothek
If NOT GlobalScope.BasicLibraries.isLibraryLoaded( "Tools" ) Then
GlobalScope.BasicLibraries.loadLibrary( "Tools" )
End if
' Pfad aller Dateien aus Dateinamen der ODS
sPfad = DirectoryNameoutofPath( ThisComponent.getURL , sPfadTrenner )
iSpalte = 0 'Spaltenindex A
iZeile = 1 'Index der Startzeile 2
' Name des Blatts zum Arbeiten
sBlatt = "Sheet1"
' Objekt des Tabellenblatts
oBlatt = ThisComponent.Sheets().getByName( sBlatt )
' ersten Inhalt holen
sTestinhalt = oBlatt.getCellByPosition( iSpalte, iZeile ).getString()
' ---------------------------------------
' Schleife, solange Inhalt
While NOT ( Len( sTestinhalt ) = 0 )
' Objekt Ziel
oZielZelle = oBlatt.getCellByPosition( iSpalte + 1 , iZeile )
'Funktion zum Setzen des Dateiinhaltes
oZielZelle.setString( getTextDateiInhalt( sTestinhalt ) )
' nächste Zeile
iZeile = iZeile + 1
' Inhalt der nächsten Zeile
sTestinhalt = oBlatt.getCellByPosition( iSpalte, iZeile ).getString()
Wend
End Sub
' ---------------------------------------
Function getTextDateiInhalt( sName as String ) as String
sInhaltsDatei = sPfad & sPfadTrenner &sName & ".txt"
If FileExists( sInhaltsDatei ) Then
' ---------------------------------------
' Textdatei lesen - aus der F1 Hilfe
iNumber = Freefile
Open sInhaltsDatei For Input As #iNumber
While not eof(#iNumber)
Line Input #iNumber, sZeile
If sZeile <>"" then
sMsg = sMsg & sZeile & chr(13)
end if
wend
Close #iNumber
' ---------------------------------------
getTextDateiInhalt = sMsg
Else
getTextDateiInhalt = "*** Datei nicht gefunden ***"
End If
End Function[/code]
Kommst Du damit zurecht?