Collapse column

Beiträge anzeigen

Diese Sektion erlaubt es dir alle Beiträge dieses Mitglieds zu sehen. Beachte, dass du nur solche Beiträge sehen kannst, zu denen du auch Zugriffsrechte hast.


Nachrichten - CHR22

Seiten: [1]
1
Excel / Antw: Office 2013: Werte aus Zelle löschen
« am: Dezember 01, 2017, 11:57:43 Vormittag »
Ja in meiner Beispieldatei ist doch was drin, auch der code. Um ganz sicher zu gehen lade ich sie mir nochmal runter und schau nach. Außerdem steht dort: 0 mal heruntergeladen. Format ist: xlsm

2
Excel / Antw: Office 2013: Werte aus Zelle löschen
« am: Dezember 01, 2017, 10:09:41 Vormittag »
worauf Themenersteller total abfahren:

Wenn der Text zu schnell gelesen wird und die Frage nicht verstanden wird obwohl es gut erklärt wurde.

Nach einer Beispieldatei gefragt wird (kann sinnvoll sein) obwohl eine hochgeladen wurde. Ja sieht man nicht immer sofort.

Mit meiner Antwort war ich zu schnell, ok. Wenn es Fragen gibt dann erkläre ich was ich vorhabe gerne nochmal (eig nicht nötig)

3
Excel / Antw: Office 2013: Werte aus Zelle löschen
« am: November 30, 2017, 10:06:48 Vormittag »
Es gibt keine Lösung?

4
Excel / Office 2013: Werte aus Zelle löschen
« am: November 28, 2017, 23:52:20 Nachmittag »
Hallo,

Ich möchte bestimmte Zahlen aus einer Zelle herauslöschen, am besten wäre eine Lösung mit VBA. In diesen Zellen befinden sich kurze Sätze, diese beziehen sich auf Elektronik Einkäufe. Darin steht auch was die einzelnen Geräte gekostet haben. Diese Zahl stört mich und ich möchte sie löschen. Meine erste Ideee war:

Ich verwende die Funktion "Text in Spalten" und trenne nach Leerzeichen, die Zahl die gelöscht werden soll steht nun allein in einer Spalte, mit dem Befehl Intersect kann man sich einen Code basteln der die Spalte in welcher der Satz steht nach der Zahl durchsucht und diese löscht. Ich sage: Durchsuche die Spalte E nach den Werten die in Spalte F stehen und wenn du sie findest dann lösche sie. Klappt nicht so gut, der Code ist sehr langsam sonst aber brauchbar. Dann hatte ich noch eine Ideee : Um das ganze schneller zu machen könnte man ja die Werte in ein Array übergeben und dann bearbeiten, mein Code funktioniert aber leider nicht. Deswegen möchte ich mich an euch wenden. Ich hoffe ihr könnt mir helfen. Ich lade eine Beispieldatei hoch, mit beiden Codes.

und:
Für die Funktion "Text in Spalten" verwende ich eine andere Tabelle die auf dem gleichen Tabellenblatt steht und die die gleichen Informationen enthält. Damit kann ich erreichen dass die Preise pro Stück (die Zahlen die gelöscht werden sollen) alle in einer Spalte stehen, aber leider ohne das E, das muss noch irgendwie mit dazu.

Die Abkürzung E für Euro hab ich nachträglich hinzugefügt, mit der benutzerdefinierten Formatierung. Wenn ich dann aber den Code mit Intersect (der ja funktioniert) anwende klappt es leider nicht. Geht nur wenn ich das E direkt in die Zelle eintippe und hinter die Zahl schreibe. Warum geht das nicht? Das wäre zeitsparender, als wenn ich jedesmal das E einfügen muss.

Gruß

5
Excel / Office 2013: Office 2013: VBA Code zum sortieren von Werten
« am: April 29, 2017, 21:29:21 Nachmittag »
Hallo,

ich bin auf der suche nach einer makro mit der man werte einer Tabelle mithilfe eines Buttons sortieren kann. Im Internet habe ich dazu auch einen guten Code gefunden, traue mich aber nicht so recht ihn zu verwenden, da mir ein Studienkollege mal erzählt hat dass es auch gefährliche codes geben soll. Der code sieht sehr komplex aus, ich verstehe schon was von Excel und vba, nur Funktionen wie VBScript.Reg und Preserve sind mir nicht bekannt. Deswegen wollt ich mal die Experten hier fragen, ob der code so in Ordnung bzw ungefährlich ist.

Excel 2013

hier der code:

Code: Visual Basic
  1. Option Explicit
  2.  
  3. Sub test()
  4.     Dim temp(1 To 2), a, i As Long, ii As Long, n As Long
  5.     With Sheets("Sortieren")
  6.         For i = 1 To 2
  7.             With .ListObjects(i)
  8.                 a = .DataBodyRange.Value
  9.                 ReDim Preserve a(1 To UBound(a, 1), 1 To UBound(a, 2) + 1)
  10.                 For ii = 1 To UBound(a, 1)
  11.                     If a(ii, 2) = "" Then n = ii - 1: Exit For
  12.                     a(ii, UBound(a, 2)) = GetSortVal(a(ii, 2) & " " & ii)
  13.                 Next
  14.                 VSortM a, 1, n, UBound(a, 2)
  15.                 .DataBodyRange.Value = a
  16.             End With
  17.         Next
  18.     End With
  19. End Sub
  20.  
  21. Function GetSortVal(ByVal txt As String) As String
  22.     Dim i As Long, M As Object
  23.     With CreateObject("VBScript.RegExp")
  24.         .Global = True
  25.         .Pattern = "\d+"
  26.         If .test(txt) Then
  27.             For i = .Execute(txt).Count - 1 To 0 Step -1
  28.                 Set M = .Execute(txt)(i)
  29.                 txt = Application.Replace(txt, M.firstindex + 1, M.Length, Format$(M.Value, "0000000000"))
  30.             Next
  31.         End If
  32.     End With
  33.     GetSortVal = txt
  34. End Function
  35.  
  36. Private Sub VSortM(ary, LB, UB, ref)
  37.     Dim i As Long, ii As Long, iii As Long, M, temp
  38.     i = UB: ii = LB
  39.     M = ary(Int((LB + UB) / 2), ref)
  40.     Do While ii <= i
  41.         Do While ary(ii, ref) < M: ii = ii + 1: Loop
  42.         Do While ary(i, ref) > M: i = i - 1: Loop
  43.         If ii <= i Then
  44.             For iii = LBound(ary, 2) To UBound(ary, 2)
  45.                 temp = ary(ii, iii): ary(ii, iii) = ary(i, iii): ary(i, iii) = temp
  46.             Next
  47.             i = i - 1: ii = ii + 1
  48.         End If
  49.     Loop
  50.     If LB < i Then VSortM ary, LB, i, ref
  51.     If ii < UB Then VSortM ary, ii, UB, ref
  52. End Sub
  53.  

Gruß
Chris

Edit: Künftig bitte Code-Tag nutzen.

Seiten: [1]