Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Hi,
oder ganz ohne Formel ;)
https://www.youtube.com/watch?v=Ec_NeIeVNfI (56 Sek. Video) wobei in 10-30 Sek. ist die Teilung erledigt
lg Chris
Feedback nicht vergessen.
3a2920576572206973742064656e20646120736f206e65756769657269672e
Folgende(r) 1 Nutzer sagt Danke an chris-ka für diesen Beitrag:1 Nutzer sagt Danke an chris-ka für diesen Beitrag 28
• Jockel
Registriert seit: 10.04.2014
Version(en): Office 2019
30.05.2018, 12:07
(Dieser Beitrag wurde zuletzt bearbeitet: 30.05.2018, 12:07 von Jockel.)
(30.05.2018, 10:11)MisterBurns schrieb: @Jockel: Ein bisschen Fantasie erledigt auch das...
Hallo Berni, ob du mir das glaubst oder nicht: Ich wusste das schon, aber vielleicht der TE nicht...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 12.04.2014
Version(en): Office 365
Hallo,
Zitat:wobei in 10-30 Sek. ist die Teilung erledigt
der TE hat XL2010, da dauert vermutlich die Installation des Addins länger als die anschließende Teilung.
Gruß
Peter
Registriert seit: 10.04.2014
Version(en): Office 2019
Hallo Peter, man kann dieses Add-In auch anderweitig nutzen. Schaden kann eine Installation vom kostenlosen Power Query (also) nicht... Selbst, wenn deine Anmerkung nur Spaß gewesen sein sollte...
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht
"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Registriert seit: 12.04.2014
Version(en): Office 365
Hallo,
Zitat:wenn deine Anmerkung nur Spaß gewesen sein sollte
war sie, wobei aber gerade im beruflichen Bereich der 'normale' Anwender oft gar nicht die Möglichkeit hat irgendetwas zu installieren.
Gruß
Peter
Registriert seit: 10.04.2014
Version(en): 2016 + 365
Hi,
wie kann ich das denn per VBA abfragen.
Ich habe z.B. den Text "MA9,VN9". Wie kann ich nun per IF-Abfrage feststellen, ob an dritter Stelle eine Zahl steht?
VBA und Formel verwurstelt, stimmt so natürlich nicht:
If Istzahl(Teil(A1);3;1)) then
Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Zitat:Hi,
wie kann ich das denn per VBA abfragen.
Ich habe z.B. den Text "MA9,VN9". Wie kann ich nun per IF-Abfrage feststellen, ob an dritter Stelle eine Zahl steht?
VBA und Formel verwurstelt, stimmt so natürlich nicht:
If Istzahl(Teil(A1);3;1)) then
Genau so ;)
Code: Option Explicit
Sub rabe()
Const strCheck As String = "MA9,VN9"
If IsNumeric(Mid(strCheck, 3, 1)) Then
MsgBox "ja"
End If
End Sub
oder brauchst du eine UDF?
Code: Function rabe(rng As Range) As Boolean
'=rabe(A1) ergibt wahr oder falsch
If IsNumeric(Mid(rng, 3, 1)) Then
rabe = True
End If
End Function
oder... wozu eigentlich
lg Chris
Feedback nicht vergessen.
3a2920576572206973742064656e20646120736f206e65756769657269672e
Folgende(r) 1 Nutzer sagt Danke an chris-ka für diesen Beitrag:1 Nutzer sagt Danke an chris-ka für diesen Beitrag 28
• Rabe
Registriert seit: 10.04.2014
Version(en): 2016 + 365
12.06.2018, 06:55
(Dieser Beitrag wurde zuletzt bearbeitet: 12.06.2018, 06:55 von Rabe.)
Hi Chris,
ich habe eine Liste von Namen und ab einer nicht vorbestimmten Stelle Platzhalter (MA8, VN8; MA9, VN9; MA10, VN10; ...) in einer Spalte. Nun möchte ich nur für die Namen per VBA Aktionen auslösen. Da ich aber nicht weiß, ob der erste Platzhalter an 6. oder 25. Stelle kommt, wollte ich die Entscheidung von der Zahl an 3. Stelle abhängig machen.
Ich hatte in dem Beitrag zuerst eine andere Formel drin stehen, mit Worten, die so kein VBA waren, drum das "stimmt so natürlich nicht".
Registriert seit: 14.04.2014
Version(en): Office 2013/2016/2019/365
Hi,
aso...
ich habe nie Platzhalter ^^
anbei etwas mehr, aber schneller im Durchlauf und gut anpassbar
Code: Option Explicit
Sub Zahl3()
Dim lnglR As Long
Dim lngfR As Long
Dim VarC As Variant
Dim sh As Worksheet
Dim intfR As Long
Dim Arr As Variant
Dim i As Long
Set sh = ActiveSheet 'anpassen
VarC = "A" 'oder 1, Spalte wo gesucht werden sollte ! anpassen
intfR = 2 'Zeile ab welcher gesucht wird ! anpassen (ohne Überschrift)
With sh
lnglR = .Cells(.Rows.Count, VarC).End(xlUp).Row
Arr = .Range(.Cells(intfR, VarC), .Cells(lnglR, VarC)).Value
End With
For i = LBound(Arr, 1) To UBound(Arr, 1)
If IsNumeric(Mid(Arr(i, 1), 3, 1)) Then
lngfR = i + intfR - 1
Exit For
End If
Next
If lngfR > 0 Then
MsgBox "gefunden in Zeile: " & lngfR & Chr(10) & "Mit dem Inhalt: " & Arr(i, 1) 'oder eben was du sonst damit machen möchtest
Else
MsgBox "nix gefunden"
End If
End Sub
0,05 Sekunden bei 500 000 Daten wobei ich in Zeile 500 001 den ersten Eintrag mit der Zahl hatte ;)
lg Chris
Feedback nicht vergessen.
3a2920576572206973742064656e20646120736f206e65756769657269672e
Registriert seit: 10.04.2014
Version(en): 2016 + 365
12.06.2018, 08:31
(Dieser Beitrag wurde zuletzt bearbeitet: 12.06.2018, 08:31 von Rabe.)
Hi Chris,
ich habe eine Liste von Mitarbeitern, eine Liste von Arbeitsplätzen, eine von Gefährdungen und eine von Maßnahmen.
Mit MMULT() werden die Gefährdungen mit den Maßnahmen (Zuordnung 1) und die Gefährdungen mit den Arbeitsplätzen (Zuordnung 2) sowie die Mitarbeiter mit den Arbeitsplätzen (3) verknüpft.
Aus (1) und (2) folgt ein MMULT()-Zwischenergebnis und dieses verknüpft mit (3) gibt das Ergebnis der Maßnahmen pro Mitarbeiter.
Da das alles mit der MMULT()-Funktion gelöst ist, die jeweils gleich viel Spalten und Zeilen haben will, dachte ich, Platzhalter zu benötigen.
Leere habe ich nun so abgefangen:
Code: ...
'Zur Absicherung, daß kein leeres MA-Blatt ausgedruckt wird.
If IsNumeric(Mid(strAuswahl, 3, 1)) Then
Exit Sub
End If
...
|