Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1820to1824
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

1 Koma stelle weniger

1 Koma stelle weniger
26.03.2021 07:35:40
oraculix
Hallo
Ich habe ein Makro das mir von meiner Festplatte den freien Speicher in TB ausliest und in TextBox3 hinein schreibt.
Freier Speicher 1,864 TB
Frage: Wie bringe ich den Vba Code dazu das er mir die letzte Stellen weglässt.
Sollte dann so aussehen Freier Speicher 1,86 TB
'Aus Laufwerk E: Freien_Speicher Platz in TextBox3 schreiben

Function Freier_Speicher(sDrive As String)
Dim FSO As Object, LW As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.DriveExists(sDrive) Then
Set LW = FSO.drives(sDrive & ":")
Freier_Speicher = Round(LW.availablespace / 1024 / 1024 / 1024, 1)
Exit Function
End If
Freier_Speicher = ""
Set FSO = Nothing
End Function


7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 1 Koma stelle weniger
26.03.2021 07:56:15
Luschi
Hallo oraculix,
in dieser Zeile wird doch festgelegt, wieviele Dezimalstellen angezeigt werden sollen:
Freier_Speicher = Round(LW.availablespace / 1024 / 1024 / 1024, 1)
Also mach aus ', 1' einfach ', 2', Außerdem ist die passende Maßeinheit in diesem Beispiel immer noch 'GByte' und nicht 'TByte'.
Gruß von Luschi
aus klein-Paris

AW: 1 Koma stelle weniger
26.03.2021 08:25:09
oraculix
Vielen Dank für die rasche Antwort habe die 2 reingeben aber jetzt wird nicht Aktualisiert.
Habe noch ein Macro darunter gefunden vielleicht liegt es an dem?
Ich durchblicke den Code sowieso nicht als Anfänger
kannst Du mir weiterhelfen bitte?
'Aus Laufwerk E: Freie_Speicher Platz in TextBox3 schreiben
Function Freier_Speicher(sDrive As String)
Dim FSO As Object, LW As Object
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.DriveExists(sDrive) Then
Set LW = FSO.drives(sDrive & ":")
Freier_Speicher = Round(LW.availablespace / 1024 / 1024 / 1024, 2)
Exit Function
End If
Freier_Speicher = ""
Set FSO = Nothing
End Function 'Zeigt FreienSpeicher aus Laufwerk E: an
Public Sub Test()
TextBox3 Free_Space("E:") & " GB"
End Sub


Anzeige
Ergänzend
26.03.2021 08:18:31
RPP63
Moin und nur am Rande!
Zahl / 1024 / 1024 / 1024
schreibt man einfacher
Zahl / 1024^3
oder noch einfacher
Zahl / 2^30
Gruß Ralf

AW: Ergänzend
26.03.2021 08:30:44
oraculix
Danke auch Dir Ralf.
habe es versucht so du es geschrieben hast, da kommt eine Fehlermeldung.
Fehler beim Kompilieren:
Erwartet: Listentrennzeichen oder )
Das habe ich geändert statt 1024 2^30
Freier_Speicher = Round(LW.availablespace / Zahl / 2^30 / Zahl / 2^30 / Zahl / 2^30, 2)

AW: 1 Koma stelle weniger
26.03.2021 08:45:46
fcs
Hallo oraculix,
Deine Funktion liefert die Speichergröße in GByte. Du musst nochmals durch 1024 dividieren, um auf TByte zu kommen.
Unter VBA musst du für die Anzeige in einer Textbox mit der Format-Methode arbeiten.
LG
Franz
Function Freier_Speicher(sDrive As String)
Dim FSO As Object, LW As Object, dblSpeicher As Double
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.DriveExists(sDrive) Then
Set LW = FSO.drives(sDrive & ":")
dblSpeicher = LW.availablespace 'freier Speicher als Ganzzahl
'Umrechnen in TByte
dblSpeicher = dblSpeicher / 1024 / 1024 / 1024 / 1024
'Formatieren zur Anzeige in Textbox
'            Freier_Speicher = Format(dblSpeicher, "#,##0.00 TB")
Freier_Speicher = Format(dblSpeicher, "#,##0.00")
Exit Function
End If
Freier_Speicher = ""
Set FSO = Nothing
End Function


Anzeige
AW: 1 Koma stelle weniger
26.03.2021 08:57:16
oraculix
Vielen Dank das mit der einen Zeile verstehe ich jetzt
Freier_Speicher = Format(dblSpeicher, "#,##0.00")
Das ist so wie wenn ich in der Tabelle zahlen Formtiere.
Aber jetzt bin ich verzweifelt die Textbox3 ist leer was
muß ich da einstellen damit mir was angezeigt wird?

AW: 1 Koma stelle weniger
26.03.2021 10:28:06
oraculix
Vielen Dank Ihr seid echte Profis.
Habe alles nochmal neu gemacht und alte Code gelöscht(da waren schon zu viele drinnen)
Und jetzt funktioniert es .

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige