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

Spalten auslesen

Spalten auslesen
18.09.2007 11:27:00
Lolie
Hallo liebe community,
ich muss schon wieder eine frage stellen, sorry, aber ich komme mit meinem wissen nicht weiter
also ich habe eine arbeitsmappe mit 3 arbeitsblättern.
das erste tabellenblatt hat vier spalten:
Ip Addresse Total 1 Total 2 Neuer Monat
Ip Addresse: In dieser spalte soll eine Ip addresse ausgegeben werden aber erst nachdem überprüft
wurde ob diese Ip Addresse im 2 Arbeitsblatt (2 Spalte) und 3 Arbeitsblatt (2 Spalte) steht
also quasi einen sverweis, das habe ich auch schon versucht und klappt
(=SVERWEIS(Vormonat!B2;Monat!B:GH;1;FALSCH), wenn die ip addresse nur in einem der
zwei Arbeitsblätter steht soll die Ip Addresse nicht ausgegeben werden.
Total1 : In dieser Spalte soll eine Zahl ausgegeben werden die in der 7 Spalte der 2 Tabelle steht
und in der Zeile wo die ip Adresse steht also mit dem sverweis habe ich das so gemacht
(=SVERWEIS(A17;Vormonat!$B$2:$AQ$43;6;FALSCH).
Total2 : In dieser Spalte soll eine Zahl ausgegeben werden die in der 7 Spalte der 3 Tabelle steht
und in der Zeile wo die ip Adresse steht also mit dem sverweis habe ich das so gemacht
(=SVERWEIS(A17;Monat!$B:$AO;6;FALSCH).
Neuer Monat: Ist die Spalte Total 1 und Total 2 von einander abziehen.
Wäre echt hammer wenn mir jemand helfen könnte.
Vielen dank und Liebe Grüße
Lolie

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten auslesen
18.09.2007 12:54:00
fcs
Hallo Lolie,
hier eine Lösung per Makro. Die IP aus Monat wird im Vormonat gesucht und bei Übereinstimmung im Blatt eingetragen. Die Formel in Spalten 2 bis 3 wieden entsprechende der Zahl der Einträge kopiert.
Du solltest die Formel unter Total1 in die gleiche Form wie unter Total2 bringen, also nur auf die ganzen Spalten ohne Zeilennummern verweisen.
Gruß
Franz

Sub IP_Adressen_Abgleichen()
Dim wks1 As Worksheet, wksMonat As Worksheet, wksVormonat As Worksheet
Dim lngZeile1 As Long, lngZeile2 As Long, lngZeile1L As Long
Dim varSuchen
Set wks1 = Worksheets(1)
Set wksMonat = Worksheets("Monat")
Set wksVormonat = Worksheets("Vormonat")
lngZeile1 = 2 'Erste Zeile für Eintrag in Tabelle1
'vorhandene IP-Einträge in Blatt 1 löschen
With wks1
lngZeile1L = .Cells(.Rows.Count, 1).End(xlUp).Row
If lngZeile1L >= lngZeile1 Then
.Range(.Cells(lngZeile1, 1), .Cells(lngZeile1L, 1)).ClearContents
'Formeln bis auf eine Zeile löschen
.Range(.Cells(lngZeile1 + 1, 2), .Cells(lngZeile1L, 4)).ClearContents
End If
End With
'IP-Einträge aus Blatt "Monat" (Spalte 2) in Blatt "Vormonat" (Spalte 2) suchen und _
falls vorhanden in Blatt 1 eintragen
With wksMonat
lngZeile1L = lngZeile1
For lngZeile2 = 1 To .Cells(.Rows.Count, 2).End(xlUp).Row
If Not IsEmpty(.Cells(lngZeile2, 2)) Then
varSuchen = .Cells(lngZeile2, 2).Value
If Not wksVormonat.Columns(2).Find(what:=varSuchen, LookIn:=xlValues, _
lookat:=xlWhole) Is Nothing Then
wks1.Cells(lngZeile1L, 1).Value = varSuchen
lngZeile1L = lngZeile1L + 1
End If
End If
Next
End With
'Formeln kopieren
With wks1
.Range(.Cells(lngZeile1, 2), .Cells(lngZeile1L - 1, 4)).FillDown
End With
End Sub


Anzeige
AW: Spalten auslesen
18.09.2007 13:28:00
Lolie
Hey Franz,
schonmal vielen dank.
also die ip adresse schmeißt er mir aus aber total1 und total2 und neuer monat nicht.
Liebe Grüße Lolie

AW: Spalten auslesen
18.09.2007 14:55:00
fcs
Halo Lolie,
du muss die Formeln einmal in der Zeile 2 eingeben!
Das Makro kopiert sie dann mit der Funktion ausfüllen nach unten entsprechend Anzahl der gefundenne IP-Adressen.
Gruß
Franz

AW: Spalten auslesen
18.09.2007 15:51:10
Lolie
Hallo Franz
verstehe leider nicht was du damit meinst
Liebe Grüße Lolie

AW: Spalten auslesen
18.09.2007 18:41:00
fcs
Hey Lolie
in deiner Frage hast du doch beschrieben, wie du die Werte in den Spalten Total1, Total2 und Monat berechnen kannst. Und diese Formeln gibst du für die Zeile2 ein.
Schaut dann etwa so aus:

Tabellenblattname: Tabelle1
A           B         C        D
1  IP Adresse   Total 1   Total 2   Monat
2   1.2.3.255       100       200     100
Benutzte Formeln:
B2:  =SVERWEIS(A2;Vormonat!$B:$AQ;6;FALSCH)
C2:  =SVERWEIS(A2;Monat!$B:$AQ;6;FALSCH)
D2:  =C2-B2


Falls du die Werte auch vom Makro berechnen und eintragen lassen willst, dann muss du das Makro wie folgt ändern.
Gruß
Franz


Sub IP_Adressen_Abgleichen()
Dim wks1 As Worksheet, wksMonat As Worksheet, wksVormonat As Worksheet
Dim lngZeile1 As Long, lngZeile2 As Long, lngZeile1L As Long, Zelle As Range
Dim varSuchen
Set wks1 = Worksheets(1)
Set wksMonat = Worksheets("Monat")
Set wksVormonat = Worksheets("Vormonat")
lngZeile1 = 2 'Erste Zeile für Eintrag in Tabelle1
'vorhandene IP-Einträge in Blatt 1 löschen
With wks1
lngZeile1L = .Cells(.Rows.Count, 1).End(xlUp).Row
If lngZeile1L >= lngZeile1 Then
.Range(.Cells(lngZeile1, 1), .Cells(lngZeile1L, 4)).ClearContents
End If
End With
'IP-Einträge aus Blatt "Monat" (Spalte 2) in Blatt Vormonat (Spalte 3) suchen und _
falls vorhanden in Blatt 1 eintragen
With wksMonat
lngZeile1L = lngZeile1
For lngZeile2 = 1 To .Cells(.Rows.Count, 2).End(xlUp).Row
If Not IsEmpty(.Cells(lngZeile2, 2)) Then
varSuchen = .Cells(lngZeile2, 2).Value
Set Zelle = wksVormonat.Columns(2).Find(what:=varSuchen, LookIn:=xlValues, _
lookat:=xlWhole)
If Not Zelle Is Nothing Then
wks1.Cells(lngZeile1L, 1).Value = varSuchen 'IP-Adresse
wks1.Cells(lngZeile1L, 2).Value = Zelle.Offset(0, 5).Value 'Vormonat
wks1.Cells(lngZeile1L, 3).Value = .Cells(lngZeile2, 2).Offset(0, 5).Value 'Monat
wks1.Cells(lngZeile1L, 4).Value = .Cells(lngZeile2, 2).Offset(0, 5).Value _
- Zelle.Offset(0, 5).Value 'Differenz
lngZeile1L = lngZeile1L + 1
End If
End If
Next
End With
End Sub


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige