MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 14.07.2014, 07:29   #1
Angelina1990
MOF User
MOF User
Standard Frage - Excel2003/VBA (Schreibe gerade Zahlen nach rechts + ungerade Zahlen nach links) ???

hallo,

ich habe hier eine Mappe.
Es gibt 3 Reihen á 16 Zahlen.
Welche Zahl gerade oder ungerade ist habe ich schon eingefügt.

Meine Bitte nun:

Die gerade Zahlen (im Beispiel gelb) sollen nach rechts in die jeweilige
Reihe geschrieben werden.

Die ungeraden Zahlen (im Beispiel grün) sollen nach links in die jeweilige
Reihe geschrieben werden.


Könnte bitte jemand hierzu eine Lösung bereitstellen?

Vorab vielen lieben Dank für eure Zeit und Mühe

LG
Angelina
Angehängte Dateien
Dateityp: xls Gerade-Ungerade.xls (17,0 KB, 12x aufgerufen)
Angelina1990 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 14.07.2014, 09:06   #2
aloys78
MOF Meister
MOF Meister
Standard

Hallo Angelina,

mein Vorschlag
Code:

Option Explicit

Private Sub CommandButton1_Click()
    Dim r As Long                   'Zeilen# Zahlenblock
    Dim c As Long                   'Spalten# Zahlenblock
    Dim rs As Long                  'Zeilen# linker oberer Eckpunkt
    Dim cs As Long                  'Spalten# linker oberer Eckpunkt
    Dim s As Long                   'Spalten# Ergabnis-Anzeige
    Const EckPunkt As String = "BS79"       '<--- ggf anpassen
    
'Koordinaten des linken oberen Eckpunktes
    rs = Range(EckPunkt).Row
    cs = Range(EckPunkt).Column
    
'alte Auswertung löschen
    Range(Cells(rs, cs - 16), Cells(rs + 6, cs - 1)).ClearContents
    Range(Cells(rs, cs + 16), Cells(rs + 6, cs + 31)).ClearContents
    
'gerade Zahlen verteilen
    For r = rs To rs + 6 Step 3
        s = cs + 15
        For c = cs To cs + 15
            If Cells(r, c) Mod 2 = 0 Then
                s = s + 1
                Cells(r, s) = Cells(r, c)
            End If
        Next c
    Next r
    
'ungerade Zahlen verteilen
    For r = rs To rs + 6 Step 3
        s = cs
        For c = cs To cs + 15
            If Cells(r, c) Mod 2 <> 0 Then
                s = s - 1
                Cells(r, s) = Cells(r, c)
            End If
        Next c
    Next r
End Sub
Gruß
Aloys
aloys78 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 14.07.2014, 09:28   #3
Angelina1990
Threadstarter Threadstarter
MOF User
MOF User
Standard

hallo aloys,

es könnte wahrhaftig nicht besser gelöst sein





Danke für deine große Hilfe
danke für deine Zeit und Mühe

LG
Angelina
Angelina1990 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 14.07.2014, 09:31   #4
EarlFred
MOF Guru
MOF Guru
Standard

Hallo Angelina,

aus dem Muster entnehme ich, dass immer genau 8 Zahlen links und 8 rechts stehen.

Als Formellösung:

Code:

[BK79:BR79]:{=KGRÖSSTE(REST($BS79:$CH79;2)*($BS79:$CH79);SPALTE($A:$H))}
[CI79:CP79]:{=KKLEINSTE(WENN(REST($BS79:$CH79+1;2);($BS79:$CH79));SPALTE($A:$H))}
Für Formel 1:
- Formel ohne die geschweiften Klammern kopieren (Strg+C):
=KGRÖSSTE(REST($BS79:$CH79;2)*($BS79:$CH79);SPALTE($A:$H))
- Bereich BK79:BR79 markieren
- Mit Taste F2 in den Bearbeitungsmodus
- Formel einfügen (Strg+V)
- Eingabe mit Strg+Shift+Enter abschließen (Matrixformel)

Für Formel 2 dann analog.

Grüße
EarlFred

__________________

Datum und Uhrzeit, Makrorekorder-Code entschlacken, {Matrixformeln}
Tutorials zu Pivottabellen: Kurzeinstieg; Dynamischer Datenbereich; Daten und Zeiten gruppieren
Für 8 meiner Beiträge haben sich die Hilfesuchenden mit einer Spende an Wikipedia, die Tafeln oder Hilfe für krebskranke Kinder eV bedankt (das entspricht 0,054% per 13.08.2019) - eine tolle Geste!

Geändert von EarlFred (14.07.2014 um 09:38 Uhr). Grund: Zahlendreher im Zellbezug
EarlFred ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 14.07.2014, 11:45   #5
Angelina1990
Threadstarter Threadstarter
MOF User
MOF User
Standard

hallo EarlFred


danke auch dir für deine Zeit und Mühe

Zitat:

aus dem Muster entnehme ich, dass immer genau 8 Zahlen links und 8 rechts stehen.

Nein dies ist nicht der Fall.

Die Lösung von aloys78 hat wunderbar funktioniert.


Trotzdem nochmals danke auch an dich

LG
Angelina
Angelina1990 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:56 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.