| ||
|
Ergebnisse auf Deutsch für vba excel zelle markieren
|
| Szukaj:Słowo(a): vba excel zelle markieren |
VBA EXCEL bestimmte Zellen markieren Hallo, ich habe in Excel ein Makro geschrieben, dass mir die von mir markierten Zellen als BIld kopiert, dies funktioniert alles wunderbar. Doch der Kunde hätte gerne, dass er die Zellen nicht markieren muss, sondern Excel selbst erkennt welche Zellen alle eien Inhalt haben. Jetzt meine Frage, wie kann ich in VBA alle Zellen markieren, die einen Wert haben?? Geht das überhaupt`?? Gruü Alaska |
Gefiltertes löschen / Markierte löschen Hallo liebe community, ich habe 2 Probleme, aber keine Lösung dafür, weiü auch nicht ob das überhaupt mit Excel VB möglich ist. Im 1. Fall geht es darum dass ich in einer Excel ToDo Liste zB. nach "erledigt" filtern will und diese Datensätze dann löschen möchte. Habe mit einer Funktion die letzte Zeile ermittelt, jedoch ignoriert VB das gefilterte und geht dann bis zur letzten zeile des datensatzes. Gibt es dazu eine Lösung? Meine 2. Frage ist, gibt es eine Funktion dafür um bestimmte zeilen zu markieren (merken), sodass man sie danach löschen kann? Wäre für eure Antworten dankbar. Gruü |
Ich hab dir mal ein mini-Makro geschrien, dass dir den Inhalt der Spalte 1 ausgibt, wenn du eine Zeile Markiert hast. Code: Sub test() MsgBox Cells(ActiveWindow.RangeSelection.Row, 1) End Sub Du findest in der Hilfe vom VB-Editor in Excel eine gute Hilfe zu diesem Thema. Gruü RobertG |
Personal Management Software Mein Vater sucht eine Software, mit der man Personal einteilen kann (z.B. Balken ziehen oder im Notfall auch Anfangs- und Endzeit der Arbeitsschicht eintragen). Das für 6 Tage die Woche von morgens um sieben bis abends um sieben. Ausserdem sollte sie die geleisteten Stunden aufsummieren, damit man einen öberblick hat, ob jemand schon zu viel oder zu wenig gearbeitet hat. Das ganze sollte eben schön mit Balken dargestellt werden und so eine Zeile pro Tag im Querformat an Platz belegen. Kennt wer sowas? Google hat mir leider nur riesige Softwaremonster geliefert (und dementsprechend teure Sachen) oder den Personal-Einsatzplan von irgend einem Schiessverein ;) Habe auch schon daran gedacht, sowas in Excel zu machen. Die Darstellung wäre einfach hinzukriegen und das zusammenzählen auch. Das einzige wo ich mir nicht sicher war, war beim Zeit einteilen: Entweder Felder markieren und VBA findet dann irgendwie die Zeit heraus (also z.b. wenn ein Feld diese Farbe hat, dann ist es Arbeitszeit). Das wär allerdings nicht sehr komfortabel. (Gibts eine Möglichkeit irgendwie mit Balken die man schieben könnte?) Das andere wär natürlich Anfang und Ende der Schicht einzugeben, aber das möchte mein Vater lieber nicht so... Tja, ideas? |
VB Excel - Mehrfacheinträge Hallo ihr! Bin an einem Makro dran in Excel. Zweck ist an einer bestimmten Spalte alle vorkommenden Dublikate (mehrfacheinträge) rot zu färben. Diesen Zweck erfüllt das Makro wunderbar. Nun wollte ich es erweitern mit der Funktion "Zuordnung". Also ich deklariere einen Zuordnungsbegriff z.b. "C". Ich sage dem Script auch per eingabefeld in welcher spalte sich die "Zuordnungs Spalte" befindet. Nun soll das Makro alle Felder die doppelt vorhanden sind rot färben soweit die Zuordnung (also die eingabe) mit der "zuordnungs Spalte" übereinstimmt. Ergebniss = Es funktioniert bedingt. also nur manchmal und ich bin nicht dahinter gekommen wieso nicht immer. In der Excel datei hab ich 2 möglichkeiten beschrieben das zu testen um zu sehen das es bei der 1. klappt aber bei der 2. nicht. (Download entfernt, da Problem gelöst) Wenn die abfrage kommt beim starten "bereinigen der tabelle"? dann mit Nein antworten. weil da ist mein beispiel drin. Und nach der 1. möglichkeit alle zellen markieren und die farbe löschen. dann erst mit der 2. möglichkeit beginnen. Vielen dank an die die mir helfen wollen. :) Gruü! |
Ohne VBA kannst du immerhin die Zeilen und Spalten, in denen eine Zahl nicht vorkommen darf, markieren. Die kleinen Matrizen kann man so vermutlich nicht berücksichtigen. Die Formel heiüt: Code: =WENN(UND(ISTNV(VERGLEICH($J$1;A$1:A$9;0));(ISTNV(VERGLEICH($J$1;$A1:$I1;0))));FALSCH;WAHR) Als erstes löschst du alle vorhandenen bedingten Formatierungen, fügst die obige Formel dann in A1 als bedingte Formatierung ein ("Formel ist" auswählen!) und kopierst sie mit dem Format-Pinsel (neben dem Einfügen-Symbol) in die anderen Zellen. Mit Google findet man übrigens einige Sudoku-Makros für Excel. Davon ausgehend, müsste man auch relativ einfach die kleinen Matrizen berücksichtigen können. |
Guten Tag, vielen Dank für die Anregungen und Hinweise - alle zusammen brachten schlieülich die Lösung, wobei man immer das VBA-Makro und die Aufgabenstellung betrachten sollte: // Markieren des Bereichs, auf den die bedingte Formatierung angewandt werden soll Excel.Range['C5:S'+IntToStr(LDZN)].Select; // Bestehende b.Formatierung löschen Excel.Selection.FormatConditions.Delete; // Neue b. Formatierung setzen mit xlCellValue = 1, xlBetween = 1, Zahlen hier 5 und 6 Excel.Selection.FormatConditions.Add(1, 1, Formula1 := '5', Formula2 := '6'); // Diese Zeile führt zu einem Fehler - es wird nur eingestellte Schriftart akzeptiert // Excel.Selection.FormatConditions[1].Font.Name := 'Arial'; // Die Indizierung beginnt bei 1 - aber es werden eckige Klammern erwartet... // ... jetzt läuft alles wie "geschmiert" Excel.Selection.FormatConditions[1].Font.Bold := TRUE; Excel.Selection.FormatConditions[1].Font.ColorIndex := 3; // Farbe rot Excel.Selection.FormatConditions[1].Interior.ColorIndex := 37; // Hintergrundfarbe blau Dank an alle, die mir halfen. Hans |
Brauche nochmal Hilfe: Excel Makros Hallo Leute, da ihr mir letztens so super geholfen habt möchte ich euch in meiner Verzweiflung nochmals befragen :) Folgendes Problem: Es gibt ja die Suchfunktion bzw. "Find" (habe hier eine engl. Version). Ich habe ein Spalte "A" wo verschiedene Namen drin stehen. Ich möchte jetzt alle Zellen mit dem gleichen Namen markieren. Dann gehe ich auf "Find", gebe den Namen ein "NameXY" und sage dann "Find All". Es erscheint eine öbersicht mit allen Zeilen, wo der Name drin vorkommt. In dieser Ansicht kann ich alle Zeilen markieren und dann habe ich sie auch im Excel-Arbeitsblatt markiert. Soweit, so gut. Aber wie kann ich das mit einem Makro (VBA) abhandeln? Gibt es eine "Find All" Funktion oder andere Lösungsmöglichkeiten? Danke für eure Hilfe. |
[Excel XP] Hyperlinks beim Speichern veraendert Hallo, ich habe ein AddIn entwickelt, mit dem man die Hyperlinks in einem markierten Bereich, auf einem Tabellenblat oder auch in der ganzen Mappe ausrichten kann. Das Utility isoliert in jedem Hyperlink den Dateinamen und fügt einen neuen Pfad sowie eine neue Extension an und setzt das Ganze dann mit folgender VBA-Zeile als Hyperlink-Adresse: lnk.Address = strFilePath & "" & strFileName & "." & strFileExt Weitere Eigenschaften des lnk-Objektes (Hyperlink) werden durch meinen Code nicht manipuliert. In der Praxis enthält strFilePath einen Fileserver und dann einen Pfad, also etwas wie \serverpfadunterverzeichnis... . Das funktioniert auch nach dem Durchlauf des Utilities, doch sobald man die Mappe speichert, können die Hyperlinks nicht mehr verarbeitet werden. Schaut man sich den Hyperlink mit "Hyperlink bearbeiten" an, so findet man \serverpfad durch \.... ersetzt. Was soll das? Warum läüt Excel meine Hyperlinks nicht in Ruhe? Schon jetzt vielen Dank für Eure Hinweise, CU -- Lars P. Wolschner lars.wolschner@nexgo.de Bernardstraüe 11b lars.wolschner@gmx.de D-63067 Offenbach am Main Fon & Fax: +49 69 80068670 Mobil: +49 163 8122462 (eplus) |
"Lars P. Wolschner" <lars.wolschner@nexgo.de>: > ich habe ein AddIn entwickelt, mit dem man die Hyperlinks in > einem markierten Bereich, auf einem Tabellenblat oder auch in > der ganzen Mappe ausrichten kann. Das Utility isoliert in jedem > Hyperlink den Dateinamen und fügt einen neuen Pfad sowie eine > neue Extension an und setzt das Ganze dann mit folgender > VBA-Zeile als Hyperlink-Adresse: > > lnk.Address = strFilePath & "" & strFileName & "." & strFileExt > > Weitere Eigenschaften des lnk-Objektes (Hyperlink) werden durch > meinen Code nicht manipuliert. In der Praxis enthält strFilePath > einen Fileserver und dann einen Pfad, also etwas wie > \serverpfadunterverzeichnis... . Ich höre gerade, daü es i.d.R. ein Netzwerklaufwerk ist. Man stellt also einen Pfad mit einem Netzwerklaufwerk ein. > Das funktioniert auch nach dem Durchlauf des Utilities, doch > sobald man die Mappe speichert, können die Hyperlinks nicht mehr > verarbeitet werden. Schaut man sich den Hyperlink mit "Hyperlink > bearbeiten" an, so findet man \serverpfad durch \.... > ersetzt. Was soll das? Warum läüt Excel meine Hyperlinks nicht > in Ruhe? > > Schon jetzt vielen Dank für Eure Hinweise, CU CU -- Lars P. Wolschner lars.wolschner@nexgo.de Bernardstraüe 11b lars.wolschner@gmx.de D-63067 Offenbach am Main Fon & Fax: +49 69 80068670 Mobil: +49 163 8122462 (eplus) |
Hallo Heike, "Frosch73" wrote: > Hallo Rainer, > > das klappt jetzt super, nur jetzt kommt das nächste Problem. Ich habe mehr > als nur 3 Formatierungen. Jetzt muü ich bestimmt mit VBA arbeiten und da bin > ich absoluter Frischling. > > Und nun ??? .... tja, da hast Du zwei Alternativen: entweder warten bis Excel 12, das soll beliebige bedingte Formate erlauben (GERCHT....), oder aber Deinem Alias gemäü handeln: ab ins kalte Wasser! Sorry, konnte gerade nicht anders... ;) Aber diese Frage: "wie kriege ich mehr als 3 bedingte Formate" wurde im Forum in den letzten Tagen mehrfach behandelt, schau mal in den Posts der letzten Woche, ich glaube, daü es da einige brauchbare Hilfen gibt. Es wird dort tlw auf Seiten im Netz verwiesen, die sich mit VBA for beginners oder Beispielen in VBA beschäftigen und für diese Problemstellung direkt verwendbare Makros listen. Halt - Dein spezielles Problem, nun da müsstest Du VBA etwas anpassen. Aber das sollte nicht wirklich ein Problem darstellen, wenn Du 'versetzte Zellen' formatmässig markieren willst. Da müssen wahrscheinlich nur ein paar Bezüge angepasst werden. Besonders die Seite von Frank bietet sehr nützliche Hilfen und Links zu seiner Seite findest Du an diesen Stellen sicherlich auch. Also, schau mal nach diesen Posts, kannst auch mal nach dem Stichwort 'bedingtes Format' suchen in der NG, da wirst Du sicher fündig. Wenn es dann konkrete Fragen gibt, melde Dich einfach wieder hier zurück. Gruü, Rainer |
VBA - Excel ActiveCell Hallo zusammen! Wenn ich eine Zelle die gerade markiert ist ein VBA-Makro zuweise, (wie z.B. Aktuelle Zelle * Zahl) wird alles richtig ausgeführt. Wenn die Zelle eine Formel ent-hält klappt es nicht. Wie kann ich eine Formel, falls vorhanden beibehalten und trotzdem die Rechenoperationen durchführen. Hier in meinem Beispiel wird die Formel danach zerschossen: *Sub test() *Dim Zelle As Range *For Each Zelle In Selection *If Zelle.HasFormula = True Then *ActiveCell = (ActiveCell / 1.95583) 'Eurowert *End If *Next Zelle *End Sub Im voraus vielen Dank! |
Zeilen in Excel verschieben??? Hallo! .. ich habe wenig Erfahrung mit VB-Programmierung, benötige aber ein Script. ich denke es ist bestimmt nicht sehr schwer dieses zu schreiben, mir fehlt aber wie gesagt das Wissen. Vielleicht kamm mir jemand helfen: Also folgende Aufgabe soll das Script in Excel2000 durchführen: -ich habe 4 Tabellen (Station1, Station 2, Station3 und Ablage) -nun soll, durch Tastenklick (wo ich das Script drauflegen will), die gesamte Zeile/n auf der der Curser steht bzw. die markiert sind, in der Tabelle (Station 1, 2 oder 3) gelöscht werden und in Tabelle4 (Ablage) auf Zeile 2 eingefügt werden. (in der "Ablage"-Tabelle soll keine Zeile gelöscht werden) Ich haffe ich hab es ein einigermaüen verständlich beschrieben. Danke michax |
Funktioniert doch prima. Habs ebend mal mit Excel2000, S7Online, und CP5511 gestestet, nach 15 Minuten gings. Zuerst mal, sieh in das Verzeichnis 'Excel AND VB'. Lies die readme.vb. Mach ein neues Excelsheet auf, öffne den VB-Editor, importiere Modul12.bas. In der Funktion initialize müt du die für dich richtigen Initialisierungen auskommentieren, die falschen als Kommentar markieren. Makro 'InitTable' laufen lassen. Dei richtigen Daten in die Zellen eintragen (IP etc.). Danach sollte es gehen. |
Zitat:
Hallo Christoph, Das Problem ist mir bekannt. Die alternative Lösung habe ich leider noch nicht gefunden ! Was mir dazu einfällt... Wenn Du die Zellen, in denen Eingaben gemacht werden, vom Schutz enthebst und dann einen Blattschutz drauflegst, dann kann man nicht mehr zuviel löschen. Allerdings ist es leider nicht möglich, alles zu markieren und dann ENTF zu drücken. Ein Makro könnte helfen... "On Error Resume Next" ist wichtig, um die Fehlerbehandlung bei einer gesperrten Zelle auszuschalten. Dann brauchst Du zwei Schleifen ala (kein VB-Code) For vSpalte = "A" to "ZZ" For vZeile = "1" to "200" Range(vSpalte + vZeile).Select ActiveCell.Value = "" Next vZeile Next vSpalte Das mit der Schleife und dem Markieren der jeweiligen Zelle muüt Du selber basteln ; Vielleicht hilft Dir das schon als Lösungsansatz... Wenn nicht, dann mach einen Thread in "Allgemein" oder "Plauderecke" auf, dann kann ich (und hoffentlich auch noch ein paar andere) versuchen, da noch ein bischen mehr Zeit und Aufwand reinzustecken ;) |
Sonderbares Verhalten bei geschützter Datei Hallo NG, mir fallen gerade einige Imponderabilien auf die Füüe... mehrere Fragen: Ich habe eine Excel-Vorlage, die sowohl geschützte Tabellenbereiche als auch geschützte VBA-Makros enthält. 1) Als ich versuchte, die nach –ffnen der Vorlage entstandene Arbeitskopie zu speichern, erzählte mir Excel was von 'kann Datei nicht speichern, solange VBA-Makros geschützt sind' (warum das???). 1a) Meine Versuche, mich an das Passwort zu erinnern schlugen erst fehl -> bekam die Makros nicht geöffnet. Dann fiels mir wieder ein, Makros entsperrt, alles gut - soweit. Wenn ich aber jetzt versuche, die Datei zu speichern, beginnt Excel mit dem Speichern, bricht ab und bringt die lapidare Meldung 'Datei nicht gespeichert' - Was soll das? 2) Mein Excel ist normalerweise so eingestellt, daü nach Enter einfach die Zelle abegschlossen ist, aber die aktive Zelle sich nicht verschiebt. In den Optionen ist der Haken also weg, aber im Richtungs-Wahlfeld, steht 'Rechts', da das dann in markierten Bereichen nach ENTER vorzugsweise die aktive Zelle nach rechts bewegt: meine bevorzugte Eingabeweise, falls doch mal mehrere Daten hintereinander erfasst werden. Soweit, so gut. In einer geschützten Datei in der Tabellenbereiche partiell geschützt sind, ist das jetzt aber hinderlich: markiere ich einen Ausschnitt einer Spalte, so ist nach ENTER die Markierung aufgehoben und die aktuelle Zelle bewegt sich - nach rechts! 2a) Warum hebt Excel nach ENTER in einer geschützten Tabelle die Markierung auf? 2b) Warum vergisst Excel in einer geschützten Tabelle überhaupt, daü die aktive Zelle nach ENTER nicht bewegt werden soll, falls nicht ein Bereich gewählt ist? Denn, ENTER bewegt die aktive Zelle _immer_ nach rechts! Das Verhalten ist sowohl unter XL XP (SP2 und SP3), als auch XL 2003 zu bewundern. Ach ja, der Terminus 'bewegt die aktive Zelle' heiüt, daü die Zelle sehr wohl an ihrem Platz bleibt, aber die Zelle rechts daneben zur aktiven wird - fällt mir nur gerade so ein.... Gruü und Dank, Rainer Stahl |
Hallo Rainer, zu 1) da tippe ich auf einen Virenscanner. Falls vorhanden,deaktiviere den testweise mal. Ansonsten ist evtl hier was dabei: (Kein Link ?) (Kein Link ?) zu 2) das konnte ich nicht nachvollziehen. Laufen evtl Makros im Hintergrund (WorkSheet_Change oder so)? Kannst du evtl eine Beispieldatei online stellen? Gruü stefan RaiStahl wrote: > Hallo NG, > > mir fallen gerade einige Imponderabilien auf die Füüe... > mehrere Fragen: > > Ich habe eine Excel-Vorlage, die sowohl geschützte > Tabellenbereiche als auch geschützte VBA-Makros enthält. > > 1) Als ich versuchte, die nach –ffnen der Vorlage entstandene > Arbeitskopie zu speichern, erzählte mir Excel was von 'kann > Datei nicht speichern, solange VBA-Makros geschützt sind' > (warum das???). > > 1a) Meine Versuche, mich an das Passwort zu erinnern schlugen > erst fehl -> bekam die Makros nicht geöffnet. Dann fiels mir > wieder ein, Makros entsperrt, alles gut - soweit. Wenn ich > aber jetzt versuche, die Datei zu speichern, beginnt Excel mit > dem Speichern, bricht ab und bringt die lapidare Meldung > 'Datei nicht gespeichert' - Was soll das? > > 2) Mein Excel ist normalerweise so eingestellt, daü nach Enter > einfach die Zelle abegschlossen ist, aber die aktive Zelle > sich nicht verschiebt. In den Optionen ist der Haken also weg, > aber im Richtungs-Wahlfeld, steht 'Rechts', da das dann in > markierten Bereichen nach ENTER vorzugsweise die aktive Zelle > nach rechts bewegt: meine bevorzugte Eingabeweise, falls doch > mal mehrere Daten hintereinander erfasst werden. Soweit, so > gut. > In einer geschützten Datei in der Tabellenbereiche partiell > geschützt sind, ist das jetzt aber hinderlich: markiere ich > einen Ausschnitt einer Spalte, so ist nach ENTER die > Markierung aufgehoben und die aktuelle Zelle bewegt sich - > nach rechts! 2a) Warum hebt Excel nach ENTER in einer > geschützten Tabelle die Markierung auf? > 2b) Warum vergisst Excel in einer geschützten Tabelle > überhaupt, daü die aktive Zelle nach ENTER nicht bewegt werden > soll, falls nicht ein Bereich gewählt ist? Denn, ENTER bewegt > die aktive Zelle _immer_ nach rechts! > > Das Verhalten ist sowohl unter XL XP (SP2 und SP3), als auch > XL 2003 zu bewundern. > > Ach ja, der Terminus 'bewegt die aktive Zelle' heiüt, daü die > Zelle sehr wohl an ihrem Platz bleibt, aber die Zelle rechts > daneben zur aktiven wird - fällt mir nur gerade so ein.... > > Gruü und Dank, > Rainer Stahl |