Das Clever-Excel-Forum.de - Treffen
findet vom 15. - 17. September 2017 in Thüringen / Region Großer Inselsberg statt. Hotelbuchung ab sofort möglich.


Vba hilfe
#1
Hallo zusammen, Ich hoffe ihr könnt mir weiterhelfen. Ich will gerne das alle doppelte Werte, Zahlen z.b. auch 1-66-66-66 , Wörter usw. in der Spalte grün markiert. Ich hab schon mal was versucht. Leider nimmt er nur normale Zahlen an und nur in Spalte A.

Code:
Sub doppelte_färben()
   Dim zelle As Range
   For Each zelle In ActiveSheet.Range("A1:A100")
        If WorksheetFunction.CountIf(ActiveSheet.Range("A1:A100"), zelle.Value) > 1 Then zelle.Interior.ColorIndex = 4
   Next zelle
End Sub

Kann man den Code so ändern, das es alles was in der Spalte ist markiert und das er vorher eine outbox frage kommt " in welcher Spalte soll überprüft werden" Dann gebe ich z.b. K ein und jetzt überprüft er nur in Spalte K die Doppelte Werte , Zahlen werden markiert. Geht sowas?

Code strukturiert dargestellt durch 3. Button von rechts im Beitragsformular: #
Moderator
?mage
Liebe Grüße 

Liebe und schöne Grüße aus der Ostsee :-) Heart

××××××××××××××××××××××××××××××××××××××××

EXCEL 2010 
to top
#2
Hallo Jürschen,

Dein code formatiert Zahlen und Buchtabentreffer.
Code:
Sub doppelte_färben()
Dim zelle As Range
For Each zelle In ActiveSheet.Range("A1:A100")
  If WorksheetFunction.CountIf(ActiveSheet.Range("A1:A100"), zelle.Value) > 1 Then zelle.Interior.ColorIndex = 4
Next zelle
End Sub

Arbeitsblatt mit dem Namen 'Tabelle1'
 A
1A
2A
3A
4C
5B
6B
7C
8D
91
102
113
123
134
145
151
Diese Tabelle wurde mit Tab2Html (v2.5.0) erstellt. ©Gerd alias Bamberg
   \\\|///      Hoffe, geholfen zu haben.
   ( ô ô )      Grüße, André aus G in T  
 ooO-(_)-Ooo    (Excel 97-2016)
to top
#3
Kannst du mir dabei helfen? Leider reicht meine Excel Kenntnisse nicht :-(
to top
#4
Hi Jürgen,

versuche es mal so:

Code:
Sub Doppelte()
   Dim varFrage
   Dim lngZeile As Long
   Dim lngLetzte As Long
   Dim intSpalte As Integer
   varFrage = Application.InputBox("Bitte Spalte angeben", "Doppelte kennzeichnen", , , , , , 2)
   If varFrage <> "Falsch" And varFrage <> False Then
      intSpalte = Cells(1, varFrage).Column
      lngLetzte = IIf(IsEmpty(Cells(Rows.Count, intSpalte)), Cells(Rows.Count, intSpalte).End(xlUp).Row, Rows.Count)
      For lngZeile = 1 To lngLetzte
         If Application.CountIf(Range(Cells(1, intSpalte), Cells(lngLetzte, intSpalte)), Cells(lngZeile, intSpalte)) > 1 Then _
            Cells(lngZeile, intSpalte).Interior.ColorIndex = 4
      Next lngZeile
   End If
End Sub


GrußformelBeverly's Excel - Inn
Ein Fragesteller sollte Antworten gründlich und komplett lesen und nicht nur die für ihn angenehmen Teile.
to top
#5
Hallo der Code funktioniert super super....
danke für deine Arbeit. Danke danke :-)


(17.04.2014, 15:47)Beverly schrieb: Hi Jürgen,

versuche es mal so:

Code:
Sub Doppelte()
   Dim varFrage
   Dim lngZeile As Long
   Dim lngLetzte As Long
   Dim intSpalte As Integer
   varFrage = Application.InputBox("Bitte Spalte angeben", "Doppelte kennzeichnen", , , , , , 2)
   If varFrage <> "Falsch" And varFrage <> False Then
      intSpalte = Cells(1, varFrage).Column
      lngLetzte = IIf(IsEmpty(Cells(Rows.Count, intSpalte)), Cells(Rows.Count, intSpalte).End(xlUp).Row, Rows.Count)
      For lngZeile = 1 To lngLetzte
         If Application.CountIf(Range(Cells(1, intSpalte), Cells(lngLetzte, intSpalte)), Cells(lngZeile, intSpalte)) > 1 Then _
            Cells(lngZeile, intSpalte).Interior.ColorIndex = 4
      Next lngZeile
   End If
End Sub


GrußformelBeverly's Excel - Inn
to top
#6
Hi Jürgen,

mal nur als kleiner Tipp am Rande und für die Zukunft: wenn man einen Beitrag schreibt, sollte man immer daran denken, dass auf der anderen Seite der Leitung keine Computer sitzen sondern Menschen, die in ihrer Freizeit kostenlos anderen Forumsbenutzern bei der Lösung ihrer Probleme helfen. Deshalb sollte - gerade in unserer schnelllebigen heutigen Zeit - doch wenigstens so viel Zeit sein, die Grundsätze des höflichen Umgangs miteinander einzuhalten, indem man einen Beitrag mit einer Anrede beginnt und mit einem Gruß beendet. 100


GrußformelBeverly's Excel - Inn
Ein Fragesteller sollte Antworten gründlich und komplett lesen und nicht nur die für ihn angenehmen Teile.
to top
#7
Hallo Karin,

war dieser Beitrag unfreundlich?

"Hallo der Code funktioniert super super....
danke für deine Arbeit. Danke danke :-)"

Ich schätze das sehr, dass diese Menschen hier anderen helfen. Ich selber bin Gründer (nicht Excel) von vier Forums und ich schätze die Leute sehr und ich würde jedem helfen, denn ich helfen könnte durch mein Wissen.

Sollte du es so auffassen, dann entschuldige ich mich natürlich und werde mich bemühen, noch freundlicher zu sein.

SORRY nochmal.







(18.04.2014, 08:56)Beverly schrieb: Hi Jürgen,

mal nur als kleiner Tipp am Rande und für die Zukunft: wenn man einen Beitrag schreibt, sollte man immer daran denken, dass auf der anderen Seite der Leitung keine Computer sitzen sondern Menschen, die in ihrer Freizeit kostenlos anderen Forumsbenutzern bei der Lösung ihrer Probleme helfen. Deshalb sollte - gerade in unserer schnelllebigen heutigen Zeit - doch wenigstens so viel Zeit sein, die Grundsätze des höflichen Umgangs miteinander einzuhalten, indem man einen Beitrag mit einer Anrede beginnt und mit einem Gruß beendet. 100


GrußformelBeverly's Excel - Inn
to top
#8
Hi Jürgen (?),

Karins Kritik bezog sich nicht auf eine generellle Unhöflichkeit. Was sie meinte, steht in ihrem letzten Halbsatz:
Zitat:indem man einen Beitrag mit einer Anrede beginnt und mit einem Gruß beendet. 100
?mage

Misserfolg ist eine Chance, es beim
nächsten Mal besser zu machen.

(Henry Ford)
http://www.sprueche-zum-nachdenken.eu
to top
#9
(18.04.2014, 08:56)Beverly schrieb: einen Beitrag mit einer Anrede beginnt und mit einem Gruß beendet

Hi Jürgen,
Du warst sicher nicht unfreundlich, aber diesen Passus von Karin hast du wohl übersehen oder siehst es eben als nicht so wichtig an.

Unser Forum ist ja kein Chat, wo man solche kurzen Äußerungen gerne ohne jede Form postet, sondern hier wird ja gefragt und eben meist geantwortet, also Hilfe erbeten und ggf. auch geholfen, da kommt es nicht auf ein Wort weniger an, um Zeit zu sparen.

Die Schlußformulierung kannst du ja auch in deine Signatur legen, dann erscheint die automatisch bei jedem Posting und man vergißt es nicht zu schreiben.
Ist einfach netter im Umgang, auch wenn manche darauf keinen Wert legen.
Mit freundlichen Grüßen  Smile
Michael

Win 7 64 bit / Excel 2007/2016
to top
#10
das Hallo ist wohl untergegangen da nicht separate Zeile, was normal wäre.
Aber die Grußformel fehlt,
Du siehst in meinem Beitrag ich passe mich an. Es steht kein Name unter dem Beitrag, also möchte man ohne Hallo ... angeredet werden.

Falls Du die nicht immer schreiben willst, benutze die Signatur. Da könnte man auch gleich seine Version erwähnen.

GrußformelHomepage
to top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste