2017-07-04 3 views
-1

Alle, Ich bin völlig unbekannt w/VBA, aber wollen einen Code für eine Fantasy Football Draft-Simulation, die die Entwürfe Auswahlen "zurücksetzen".VBA Freie Zellen im benannten Bereich, die spezifisches Zeichen enthalten

Parameter: Die Größe der Daten beträgt 12 Teams (Spalten) und 18 Runden (Zeilen). Die Daten sind nicht benachbart, also habe ich den Bereich, den ich zurücksetzen möchte "DataVal"

Die Liga ist eine Keeper-Liga, was bedeutet, dass es bereits in ausgewählten Zellen vor dem Entwurf sind Spieler, so dass ich nicht will diese geklärt haben. Um zwischen behaltenen und ungepackten Spielern zu unterscheiden, haben die ungepflegten Spieler ihre Positionen in Klammern.

Anfrage: Ich möchte einen Code, der alle Zellen mit "(" oder wenn das nicht möglich "(RB)", "(QB)", "(WR)", "(TE)" löscht "(TD)", "(PK)" innerhalb des Bereichs "DATAVAL", die ich auf einen Knopf

+0

Schön. Völlig ungewohnt: Das bedeutet: Drücken Sie ALT + F11 und starten Sie die Programmierung! Einige großartige Quellen sind [Ozgrid] (http://www.ozgrid.com/), [Chip Pearson's Website] (http://www.cpearson.com/Excel/MainPage.aspx) und [Ron de Bruins Website] (http://www.rondebruin.nl). Dokumentation zu jeder Klasse, die Sie mit Google + MSDN finden können. Ich würde sagen: Beginnen Sie mit der Programmierung und wenn Sie auf ein bestimmtes Problem stoßen, geben Sie Ihren Code hier ein und wir helfen Ihnen gerne weiter. Bis dahin: Bitte beachten Sie, dass StackOverflow kein kostenloser Programmierservice ist und wir Ihre Arbeit nicht für Sie erledigen werden - das wäre für die meisten Leute ein bezahlter Job. –

+0

Willkommen bei SO! Bitte überprüfen Sie Folgendes und bearbeiten Sie Ihre Frage entsprechend: https://stackoverflow.com/help/how-to-ask – garfbradaz

Antwort

0

Versuchen das Hinzufügen dieser Code in einem regulären Modul anbringen können:

Sub ClearCells() 

Dim rng as Range 

With Range("DataVal") 'You had a named range named "DataVal" right? 
    For each rng in .cells 
     If Left(rng.value, 1) = "(" Then 'All values that start with "(" 
      rng.ClearContents 
     End If 
    Next rng 
End With 
End Sub 

Es über jede Zelle Schleifen Wenn in Ihrem benannten Bereich das erste Zeichen in der Zelle "(" ist, wird diese Zelle gelöscht.

Fügen Sie als Nächstes eine Schaltfläche hinzu, und fügen Sie das Makro "ClearCells" hinzu.

Lesen Sie immer noch How do I ask a good question bevor Sie Ihre nächste jedoch.

Verwandte Themen