Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1268to1272
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
Inhaltsverzeichnis

Problem Makro Seite füllen

Problem Makro Seite füllen
Andreas
hallo, habe ein problem mit einem makro - und zwar wird von einer txt datei zeilen eingelesen und irgendwo steht im makro, dass nur maximal zwei seiten gefüllt werden sollen. ist die txt-datei nicht so groß, klappt alles, ist sie größer, kommen fehler und die seiten werden nicht korrekt dargestellt. kann mir jemand helfen?
wenn jemand sowas nebenher auf abrechnungsbasis macht, wäre mir das auch recht

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
und irgendwo steht im makro
06.07.2012 09:52:45
Rudi
Hallo,
in der 11.Codezeile. ;-)
Sind wir Hellseher?
Gruß
Rudi
AW: und irgendwo steht im makro
06.07.2012 09:56:18
Andreas

Sub auto_open()
erg = MsgBox("Convert Offline Configuration to MS-Excel ?", vbYesNoCancel, "Convert -  _
Configuration")
If erg = 6 Then process
End Sub
Sub process()
Dim ta(50), tb(50), tc(50), td(50), te(50)
Dim foundpos, kopf
' Verzeichnis wechseln
ChDrive "C"
ChDir "c:\JDapps\Pricebook\Export"
' Öffnen Dialog
configfile = Application.GetOpenFilename(, , "Saved Configuration")
If configfile = False Then Exit Sub
OrgName = ActiveWorkbook.Name
' Öffnen
Workbooks.OpenText Filename:=configfile, Origin _
:=xlWindows, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=True, _
Comma:=False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1), _
Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7, 1), Array(8,  _
1), _
Array(9, 1))
' Einlesen der Maschinen-Konfigurationen
[a1].Select
n = 0
x = 0
While ActiveCell.Value  ""
n = n + 1
If ActiveCell.Value = "CMNT" Then CMNT = n
If ActiveCell.Value = "TRADE" Then Trade = n
If ActiveCell.Value = "VAT" Then VAT = n
If ActiveCell.Value = "PERS" Then PERS = ActiveCell.Offset(0, 5).Value
If ActiveCell.Value = "TITLE" Then titel = ActiveCell.Offset(0, 5).Value
If ActiveCell.Value = "OPTION" Then
x = x + 1
ta(x) = ActiveCell.Offset(0, 3).Value
tb(x) = ActiveCell.Offset(0, 4).Value
tc(x) = ActiveCell.Offset(0, 5).Value
td(x) = ActiveCell.Offset(0, 7).Value
te(x) = ActiveCell.Offset(0, 8).Value
End If
ActiveCell.Offset(1, 0).Select
Wend
ActiveWorkbook.Close
Workbooks.Open Filename:="Template.xls"
'Festlegen welcher Bereich als Seitenüberschrift genommen werden soll
kopf = ""
Set foundpos = ActiveSheet.Range("A:E").Find(What:="#End Header#", LookIn:=xlValues, LookAt:= _
xlWhole, MatchCase:=True)
If Not foundpos Is Nothing Then
kopf = Range(Cells(1, 1), foundpos.Offset(-1, 4)).Address
foundpos.Activate
ActiveCell.EntireRow.Delete
End If
'Eintragen Konfiguration
[a1].Select
Set foundpos = ActiveSheet.Range("A:E").Find(What:="#Start Konfig#", LookIn:=xlValues, LookAt:= _
xlWhole, MatchCase:=True)
If Not foundpos Is Nothing Then
If kopf = "" Then
' hier wird festgelegt was alles Überschrift sein soll -
' Vorgabe ist alles bis zur ersten Konfigurationszeile
kopf = Range(Cells(1, 1), foundpos.Offset(0, 4)).Address
End If
foundpos.Activate
StartKonfigRow = ActiveCell.Row
For i = 1 To x
ActiveCell.EntireRow.Insert
ActiveCell.Value = ta(i)
Selection.Font.FontStyle = "Bold"
'Selection.Font.FontStyle = "Fett"
ActiveCell.Offset(1, 0).EntireRow.Insert
ActiveCell.Offset(1, 0).Value = tb(i)
ActiveCell.Offset(1, 1).Value = tc(i)
If td(i) > 0 Then
ActiveCell.Offset(1, 2).Value = te(i)
ActiveCell.Offset(1, 3).Value = td(i)
ActiveCell.Offset(1, 3).NumberFormat = "#,##0.00"
End If
ActiveCell.Offset(2, 0).EntireRow.Insert
ActiveCell.Offset(3, 0).Select
Next i
End If
Set foundpos = ActiveSheet.Range("A:E").Find(What:="#End Konfig#", LookIn:=xlValues, LookAt:= _
xlWhole, MatchCase:=True)
If Not foundpos Is Nothing Then
While ActiveCell.Row() 

Anzeige
AW: und irgendwo steht im makro
06.07.2012 10:25:19
Rudi
Hallo,
deine Arrays sind zu knapp dimensioniert.
Mach mal aus Dim ta(50) ta(100) etc.
Besser wäre aber, das zu dynamisieren.
Gruß
Rudi
AW: und irgendwo steht im makro
06.07.2012 11:59:12
Andreas
hallo, was meinst du mit "dynamisieren" .. hat das einen einfluss, ausser auf die geschwindigkeit beim einlesen, wenn ich das z. B. auf 200 setze? für was steht denn das ta und die anderen .. tb, tc, te...

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige