Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Zeilen mittels script unterstreichen ??





Frage

Hallo allerseits, ich habe leider nicht viel Ahnung von Excel und solcher Software. Brauchte ich bisher für meinen job nicht, jetzt aber mehr als je. Und stosse dann auch schnell an meine grenzen. Ich habe eine Tabelle, die ich durch ein aufgenommenes macro schon mal so "aufräumen" lasse, dass man danach in jeder 2. Zeile einen "posten" klar erkennen kann,mit angabe des Artikels, Stückzahl und positionsnummer. Nun kann ich natürlich hingehen und jede 2. Zeile markieren, und das bis 200, dann dies mit einer feine Linie unterstreichen. aber eigentlich wollte ich das über ein script machen, damit ich nicht bei nur 7 Positionen(=7 Zeilen im 2-zeilen-Abstand) 200 zeilen unterstreichen muss und daabei 4blätter ausdrucke. Einblatt mit den unterstrichenen Zeilen reicht ja. die erkennung einer leeren zeile, wenn im 2-er schritt abgefragt wird, würde ich vielleicht noch schaffen, aber das markieren der Zeilen z.b. mittels For-Next und Range().Select ist mir bisher nicht gelungen. dieses bl**** Range().Select will wohl absolut mit solchen variablen aus for- Anweisung nichts zu tun haben. Hat hier jemand einen Vorschlag, wie ich damit weiterkommen Kann ?? besten dank im voraus, mfg tracer

Antwort 1 von Beverly

Hi,

so richtig klar gekommen bin ich mit deiner Beschribung nicht. Hier mal ein Code, was ich daraus interpretiert habe

Sub unterstreichen()
    Dim loZeile As Long
    For loZeile = 2 To 200 Step 2
        With Range(Cells(loZeile, 1), Cells(loZeile, 3)).Borders(xlEdgeBottom)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With
    Next loZeile
End Sub

begonnen wird ab Zeile 2, unterstrichen wird in Spalte A, B und C

Bis später,
Karin

Antwort 2 von tracer

hallo karin,

erst einmal besten dank ,
werde ich gleich probieren.
allerdings hatte ich vor das ab der 6. Zeile
und eben die gesamte zeile unterstreichen zu lassen.

ok, wenn ich richtig sehe, Cells(loZeile, 3)
auf 55 erhoehen, dann müsste ich da sein.

allerdings muss ich nun noch sehen, wie ich die schleife
dynamisch mache.
also nicht generell bis 200, das wollte ich in der spalte A
durch schrittweises abfragen mit sowas wie "istleer".
da wo dann ix mehr steht sollte dann die endzahl der schleife
fürs unterstreichen "to x step 2" stehen.
Denn wenn ich immer bis zeile 200 unterstreiche,
habe ich hinterher bei kleineren beständen mehrere leere
seiten mit linien die aus dem drucker kommen.

Aber wie gesagt , Besten dank.
jetzt werde ich mal experimentieren.

Antwort 3 von tracer

ach , und eine frage des anfängers:

wieso sehe ich wenn ich z.b. mit MACRO aufnehmen
gearbeitet habe :
range (_
"6:6,8:8,10:10
_).Select
Bei dir wurde das ganze nun mittels CELLS
realisiert.
Gibts irgendwo eine Referenz, wo ich sowas
nachlesen kann ???

mfg
tracer

Antwort 4 von Beverly

Hi,

mit folgendem Code kannst du die letzte belegte Zelle in Spalte A ermitteln und dadurch die Schleife variabel gestalten

    Dim loLetzte As Long
    loLetzte = IIf(IsEmpty(Cells(Rows.Count, 1)), Cells(Rows.Count, 1).End(xlUp).Row, Rows.Count)


Was die Bezeichnung von Bereichen/Zellen betrifft, Range oder Cells, so schau mal in die Hilfe zum Stichwort Range-Auflistung.

Den Makrorecorder benutzt man eigentlich dazu, um den generellen Codeablauf zu erfahren und auch die betreffenden Befehle. Anschließend sollte man den Code aber bearbeiten, weil damit auch viel "Müll" aufgezeichnet wird. Z.B. kann in VBA zu 99% auf Select und Activate verzichtet werden

Bis später,
Karin

Antwort 5 von tracer

Hallo Karin,

Funktioniert einfach genial.
Vielen Dank für alles.

Ich hatte versucht mittels aufzeichnen von MAcro´s
hinter die geheimnisse und gestaltung dieser
"Sprache" von Excel zu schauen. Wie man sieht,
ABSOLUT Erfolglos :(

naja, da wird mir wohl doch nichts anderes übrig bleiben,
als mal wieder ein gutes Buch zu kaufen. ;)

Damit werde ich es dann; so alles den rechten Weg geht;
schaffen, den "Müll" aus dem jetzigen Macro zu entsorgen.

Nochmals vielen Dank, mit dieser tollen Hilfe
werden mir jetzt wohl pro Monat ca. 10 unbez.
Überstunden erspart bleiben.

dank und gruss
tracer

Antwort 6 von Beverly

Hi,

wenn ich dir einen Rat geben darf - schau dich in den Foren um, da lernst du wesentlich mehr als dir jedes Buch bieten kann.

Bis später,
Karin

Antwort 7 von tracer

Hallo Karin,

sicher hast du recht, wie die obigen Zeilen beweisen,
weisst du wovon du sprichst.
Nur ist es sicher wohl auch nachvollziehbar,
das für einen Anwendungsneuling wie mich ,
ohne eine Referenz ein VERSTEHEN deiner
sowie fiehler anderer CODE Zeilen schier
unmöglich sein wird.
In einem entsprechenden Tutorial, Buch,
oder ähnlichem wird es sicher immer wieder
eine Erklärung zu dem geben, was da angwandt wird.

Bitte nicht falsch verstehen, ds ist keine Kritik,
sondern mein Eingeständnis meiner Unwisenheit
aus bisherig nicht vorhandener Notwendigkeit.

Da ich nun wohl häufiger in die Lage kommen werde
solcher Hilfsmittel zu bedürfen, möchte ich auch gern
damit umgehen können.
Und das möglichst ohne jedesmal jemanden
mit solchen Fragen nerven zu müssen.

schöne Grüsse
Tracer

Antwort 8 von Beverly

Hi,

ich verstehe das schon nicht falsch - keine Angst ;-))).

Du brauchst auch keinerlei Angst zu haben, dass du mit Fragen irgendjemandem auf den Geist gehst, denn Foren sind dazu da Fragen zu stellen.

Ich lade dir mal eine Excelarbeitsmappe hoch (verbleibt 100 Tage auf dem Webspace), in der sich ein PDF-Dokumment befindet, das dir vielleicht schon ein wenig weiterhelfen könnte. Ob der Inhalt des PDF-Files gut oder nicht gut ist, kann ich dir allerdings nicht sagen, da ich es nicht weiter gelesen habe. Den ungewöhnlichen Weg des Einbettens in eine Arbeitsmappe musste ich gehen, da der Server kein PDF-Format akzeptiert. Den Link der Website, von welcher ich es heruntergeladen habe, weiß ich leider nicht mehr, es muss aber irgendwo auf der Seite der FernUni Hagen sein.

Hier der Download-Link

Bis später,
Karin

Antwort 9 von tracer

Hallo,

z.b. dieses nette Stück arbeit für das erkennen der letzten belegten
Zeile, ich sehe die Anweisung und versuche mir von meinen
"alten" Basic-Zeiten da meinen reim zu machen.
Jedoch sehe ich dem Code definitiv nicht ab,
wieso er nicht schon bei der ersten leeren zeile die
er in spalte a trifft, sagt: das wars.

nun gut, es gibt eben immer noch was zu lernen ;)

danke nochmals,

bis bald
tracer

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: