Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
496to500
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
496to500
496to500
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Tabelle automatisieren

Tabelle automatisieren
07.10.2004 16:11:48
Lisa
Hallo an die Experten
Ich brauche dringend Eure Hilfe!!
Wo soll ich anfangen; ich erstelle
aus unserem Verwaltungssystem monatlich
eine Datentabelle in Excel. In einem anderen
Excel-File habe ich Verweise auf die neu erstellte
Tabelle, sodass immer die aktuellen Daten drin sind.
Nun ist mein Problem so, die Tabelle, welche monatlich
erstellt wird, logischerweise immer neue Daten enthält,
sprich, mehr Zeilen enthält wie im Vormonat.
Die vom System erzeugte Tabelle setzt sich wie folgt zusammen:
Spalte A = FondID
Spalte B = LgNr
Spalte C = Verkaufsdatum
Spalte D = LgArt
Noch diverse Spalten mit Daten, sind aber in diesem Fall nicht relevant.
Die LgArt in Spalte D ist die Bezugspalte (es gibt vier verschiedene Typen:
-Wohnhäuser
-Geschäftshäuser ohne wesentlichen Wohnanteil
-Gemischte Liegenschaften
-Bauland (inkl. Abbruchobjekte) und angefangene Bauten
Hier die Datei zum besseren Verständnis:

Die Datei https://www.herber.de/bbs/user/11796.xls wurde aus Datenschutzgründen gelöscht

Vielen Dank für Eure Hilfe
Gruss Lisa

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
wird bearbeitet
tobias
Hallo
OK, bin dabei...
mfg tobias
OT so kann man sparen :-(
PeterW
Hallo Lisa,
hat die CSAM (www.csam.com) keine eigene Abteilung für solche Probleme? Oder sind die Informationen aus den Dateieigenschaften missverständlich?
Peter
AW: Funktioniert m.T.
Lisa
Hallo Tobias
Ey, Du bist echt genial - es funzt einwandfrei,
genau sowas hab ich gesucht....
Vielen, vielen Dank.
Liebe Grüsse Lisa
AW: doch noch ne Frage...
Lisa
Hallo Tobias
Noch ne Frage - wie schauts aus, wenn
die geladenen Daten aus dem Sheet MonatlicheSysTab
in einem separaten Excel-File ist und nicht in der
selben Mappe wie die Verknüpfungen?
Wäre echt Klasse, wenn Du mir die Anpassungen sagen könntest.
Danke schon mal.
Gruss Lisa
Anzeige
AW: doch noch ne Frage...
tobias
Hallo
auf die schnelle hab ichs mal so gemacht:
Workbook Name musst du noch anpassen

Sub Auflisten()
Dim Tabelle As Worksheet, Thema As Integer, Index As Long
Dim Suchbereich As Range, RubrikZeile As Long, Rubrik As String, Zeile As Long
Dim Ergebnis() As Long, Spalte As Long, EndZelle As Long
ReDim Ergebnis(0 To 0)
On Error Resume Next
Application.ScreenUpdating = False
Application.Cursor = xlWait
Set Tabelle = Workbooks("Mappe1").Worksheets("monatlicheSysTab")
Set Suchbereich = Tabelle.UsedRange
With ThisWorkbook.Worksheets("Verknüpfung")
For Thema = 1 To 3
EndZelle = .Cells(65536, 5).End(xlUp).Row
Select Case Thema
Case 1: Rubrik = "Geschäftshäuser ohne wesentlichen Wohnanteil"
Case 2: Rubrik = "Gemischte Liegenschaften"
Case 3: Rubrik = "Bauland (inkl. Abbruchobjekte) und angefangene Bauten"
End Select
For Index = 73 To EndZelle
If .Cells(Index, 5) = Rubrik Then
RubrikZeile = Index
Exit For
End If
Next
Call Suche(Suchbereich, Rubrik, Ergebnis)
If UBound(Ergebnis) > 0 Then
Zeile = 0
For Index = 1 To UBound(Ergebnis)
RubrikZeile = RubrikZeile + 1
Zeile = Zeile + 1
For Spalte = 1 To 6
.Cells(RubrikZeile, Spalte) = _
Workbooks("Mappe1").Worksheets("monatlicheSysTab").Cells(Ergebnis(Index), Spalte)
Next
If Zeile > 4 Then
.Cells(RubrikZeile + 1, 1).EntireRow.Insert
End If
Next
End If
Next
End With
Application.ScreenUpdating = True
Application.Cursor = xlDefault
End Sub

Wie du merken wirst dauert das ganze jetzt länger. Normalerweise würde ich die Daten von monatlicheSysTab zuerst in ein Array kopieren und dann von dem Array in Verknüpfung kopieren. Aber dafür hab ich jetzt keine Zeit...
Informiere dich mal über Arrays:
z.B.:
Dim Feld()
Redim Feld(0 to 0)
....
....
Redim Preserve Feld(0 to index)
Feld(index)= cells(index,1)
....
....
mfg tobias
Anzeige
AW: doch noch ne Frage...
Lisa
Hallo Tobias
Danke, das Du Dir so Zeit nimmst für mich,
find ich echt toll.
Falls Du noch Zeit und Lust hast, kannst Du
mir kurz erklären, wie ich die Funktion
"Call Suche" definiere? Ich bekomm ne Fehlermeldung,
dass die Funktion oder Sub nicht definiert ist.
Danke und Gruss Lisa
AW: doch noch ne Frage...
tobias
Hallo
ja, muss natürlich so sein:

Sub Auflisten()
Dim Tabelle As Worksheet, Thema As Integer, Index As Long
Dim Suchbereich As Range, RubrikZeile As Long, Rubrik As String, Zeile As Long
Dim Ergebnis() As Long, Spalte As Long, EndZelle As Long
ReDim Ergebnis(0 To 0)
On Error Resume Next
Application.ScreenUpdating = False
Application.Cursor = xlWait
'Workbook Name muss angepasst werden
Set Tabelle = Workbooks("Mappe1.xls").Worksheets("monatlicheSysTab")
Set Suchbereich = Tabelle.UsedRange
With ThisWorkbook.Worksheets("Verknüpfung")
For Thema = 1 To 3
EndZelle = .Cells(65536, 5).End(xlUp).Row
Select Case Thema
Case 1: Rubrik = "Geschäftshäuser ohne wesentlichen Wohnanteil"
Case 2: Rubrik = "Gemischte Liegenschaften"
Case 3: Rubrik = "Bauland (inkl. Abbruchobjekte) und angefangene Bauten"
End Select
For Index = 73 To EndZelle
If .Cells(Index, 5) = Rubrik Then
RubrikZeile = Index
Exit For
End If
Next
Call Suche(Suchbereich, Rubrik, Ergebnis)
If UBound(Ergebnis) > 0 Then
Zeile = 0
For Index = 1 To UBound(Ergebnis)
RubrikZeile = RubrikZeile + 1
Zeile = Zeile + 1
For Spalte = 1 To 6
.Cells(RubrikZeile, Spalte) = _
Workbooks("Mappe1.xls").Worksheets("monatlicheSysTab").Cells(Ergebnis(Index), Spalte)
'Workbook Name muss angepasst werden
Next
If Zeile > 4 Then
.Cells(RubrikZeile + 1, 1).EntireRow.Insert
End If
Next
End If
Next
End With
Application.ScreenUpdating = True
Application.Cursor = xlDefault
End Sub

kopiere nur die Prozedur Auflisten, lass die Prozedur Suche stehen
wie gesagt sieh dir aber mal das mit den Arrays an. Musste halt bisschen VBA lernen :-)
mfg tobias
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige