Zum Inhalt springen

Excel Makros


Hammerhead

Empfohlene Beiträge

Tach,

hab ein kleines Anliegen, und zwar soll ich hier in der Arbeit aus einer ExcelTabelle mit ca. 250 Zeilen ein Makro schreiben, das alle Rot makierten Zeilen in einer Neuen Tabelle (Tabelle2) ausgibt.

Wie kann ich das machen ? Wie ich ein Makro erstelle weiß ich, das Problem liegt nur bei der Farbmakierung. Das Makro soll bei verschiedenen ExcelTabellen funktionieren, da sich die Einträge häufig ändern. Es geht um die Belegung der Ports aller Sternkoppler im Netz. Die Rotmakierten sind die, die keinen freien Port mehr haben. Es sollen also einfach nur immer alle Rotmakierten ausgeben werden.

Bitte um baldige Hilfe

greetz

Hammerhead

Link zu diesem Kommentar
Auf anderen Seiten teilen

ja man kann makros recorden, aber man kann nicht einstellen, das alle rotmakierten felder (die sich ändern und nicht immer gleich sind), kopiert werden. es geht um die auswahl rote felder.

also so ungefähr:

if feldbackgroundcolor = red

insert into tabelle 2

oder so halt.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Klar, beim recorden müsstest Du wohl von Hand alle auswählen, und wenn dann nochmal eines dazukommt, dann hast wieder Pech gehabt. Ich gehe auch mal davon aus, dass Du hier über Feldeigenschaften agieren musst. Für den Fall, dass Du recht gutes Englisch sprichst, hab ich Dir da nen Link:

KLICK MICH!!!

P.S.: Keine Sorge, sooo gut ist deren Englisch auch wieder nicht!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Original geschrieben von Hammerhead

ja man kann makros recorden, aber man kann nicht einstellen, das alle rotmakierten felder (die sich ändern und nicht immer gleich sind), kopiert werden. es geht um die auswahl rote felder.

also so ungefähr:

if feldbackgroundcolor = red

insert into tabelle 2

oder so halt.

So, dann will ich auch mal versuchen ein wenig zu helfen.

Hab da auch zumindest schon mal nen Ansatz, der deinem Wunsch von oben entsprechen sollte.

MANKO bisher : ich weiß jetzt gerade überhaupt nicht mehr wie ich auf einfachem Wege die nächste Zelle in der Tabelle 2 aktivieren kann. :( D.h.: die Werte werden alle in ein Feld geschrieben, so daß nur der letzte Wert in der Zelle A1 am Ende steht.....vielleicht kann da noch mal einer nen TIP zu geben !!!

Ansonsten sollte es soweit funktionieren, wenn du in Tabelle 1 Daten hast und mehrere Felder ROT hinterlegt sind.


Sub Copy_Colored_Values()


anzRow = ActiveSheet.UsedRange.Rows.Count

anzCol = ActiveSheet.UsedRange.Columns.Count

anzCel = ActiveSheet.UsedRange.Cells.Count

Set MeinBereich = ActiveSheet.UsedRange


MsgBox Prompt:="Zeilen: " & anzRow & vbCr & "Spalten: " & anzCol & vbCr & "Zellen: " & anzCel, Title:="Test"


For i = 1 To anzCel


If (MeinBereich.Cells(i).Interior.ColorIndex = 3) Then


    MeinBereich.Cells(i).Copy


    Sheets("Tabelle2").Select

    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _

        False, Transpose:=False


    'HIER FEHLT NOCH DAS VORBEREITEN DER NÄCHSTEN ZELLE, ZUM REINSCHREIBEN DES NÄCHSTEN WERTES !!!


End If


Next


End Sub

Wie gesagt, bin auch Newbie im Bereich VBA, hoffe mal, es hilft hier welchen auf die Sprünge....;)

Und vielleicht hilft es dir auch schon ein wenig. Werd mal schauen, daß ich das noch hinbekomme mit dem Werten in einzelne Zellen schreiben, entweder nebeneinander oder untereinander.....kann ja auch nich so schwer sein...... :rolleyes:

Einfach noch mal melden, wenn du so gar nicht weiterkommst.....oder auch wenn du es vielleicht doch fertig hast ! ;)

Gruss Flori

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich würde das mit autofiltern machen.

also (falls deine Tabelle noch nicht über die benötigten Zellen verfügt, einfügen) eine Zelle für die maximalen Ports, eine für die Benuzten, eine für die Differenz, und über den Autofilter nur noch die anzeigen, bei denen die Differenz null ist.

Oder geht es um was anderes?

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Wochen später...

Hallo Hammerhead,

hab mich jetzt da doch nochmal hintergeklemmt und die letzte Zeile "ausgebrütet" ! :)

Bin ja auch kein VBA-Experte, nur mal eben wenn's gebraucht wird, bin ich in der Sache drin.

Zudem war in den letzten Woche jede Menge anderes los, so daß ich mich einfach mal kurz entschuldigen möchte, daß ich da nicht eher zu gekommen bin, daß ganze zu komplettieren.

Nun aber hab ich's gefunden, was da im Quelltext oben noch stehen muß :

An der Stelle wo dieser "Platzhalter" (=der Satz, der auf die fehlende Zeile verweist :D ) steht, muß hin :

ActiveCell.Offset(0, 1).Select

-> Dann fügt er die Werte nebeneinander (A1,B1,C1...) ein

ODER aber

ActiveCell.Offset(1, 0).Select

-> Dann werden die Werte untereinander (A1,A2,A3....) eingefügt.

Nix zu Danken für die Mühen, so hab ich auch wieder nen bissel üben können ! ;)

Freut mich auf jeden Fall, daß es soweit zu funktionieren scheint und hoffe, daß dir das jetzt auch im Ganzen gut weiterhilft !!!

Viel Spaß damit ! :)

Flori

P.S. Wenn doch noch Fragen sind, einfach nochmal melden - versuche dann auhc nen bissel schneller zu sein als dieses Mal !

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...