Frage

Ich versuche, den Namen meiner Datei (en) zu speichern, die teilweise auf Zellenwerten in einem meiner Blätter basiert.Ich habe den folgenden Code:

generasacodicetagpre.

Das Problem ist, dass der Titel als Prozentsatz als Prozentsatz und nicht ein Wert angezeigt wird, oder einige Fälle als Dollarbetrag und kein Wert.Kann jemand erklären, wie das ist das?

danke!

War es hilfreich?

Lösung

Das Folgende speichert eine Datei mit einem Namen wie "Dateiname-50% - $ 23.xlsx"

Ich setze jetzt folgendermaßen voraus (bitte kommentieren Sie und informieren Sie mich, ob ich falsch bin)

  • Sie möchten eine Datei speichern, die Sie geöffnet haben (Word-Dokument oder Excel-Blatt?)
  • Sie möchten diese Datei basierend auf den Werten in F18 und M13
  • nennen
  • Die Werte können entweder Prozentsätze oder Kosten in Dollar
  • sein
  • F18 wird immer ein Prozentsatz sein, und M13 ist immer in Dollar
  • -E-Werte, die in Zellen eingegeben wurden, sind nur der numerische Wert, und die Zellen wurden auf% oder Währung formatiert.

(es wird helfen, wenn Sie in der Zukunft Ihr Problem offensichtlich etwas offensichtlich legen und einschließen, was Sie bisher versucht haben)

generasacodicetagpre.

jetzt zu erklären, was ich getan habe.

Erstens, wenn Sie eine Zelle auf den prozentualen Wert formatieren und in 0,5 EXCEL eingeben, wird es automatisch auf 50% geändert, aber der Zellenwert ist jedoch noch 0,5. Wenn Sie darauf zugreifen, müssen Sie nur mit demselben Prozess ausführen Nummer als Prozentsatz.

    .
  1. mehrfach um 100 (0,5 wird 50)
  2. Fügen Sie den Prozentsatz nach der Nummer

    hinzu
        Sub testSave()
    
    Dim SaveToDirectory As String
    
     'just checking string looks good comment or delete when happy
    MsgBox ("other text you want " & Cells(18, 6).Value * 100 & "%-$" & Format(Cells(13, 13).Value, "#,###.##"))
    
        'set save directory
        SaveToDirectory = "C:\Users\DMASON2\Documents\"
    
        'set file name
        ActiveWorkbook.SaveAs Filename:=SaveToDirectory & "FileName-" & Cells(18, 6).Value * 100 & "%-$" & Format(Cells(13, 13).Value, "#,#*.##"), FileFormat:=xlWorkbookDefault
    
    
        End Sub
    
  3. Jetzt ist die Währung einfacher, da der Wert, den Sie sehen, nicht ändert, nicht nur, was Sie tun müssen, ist in der Währung CHAR

    hinzuzufügen generasacodicetagpre.

    jetzt zum Speichern des Dokuments. Da ich keine Ahnung hat, welche Art von Dokument Sie sparen möchten, habe ich gerade verwendet, um den aktiven als Beispiel zu speichern. Der Dateiname ist eine Kombination aus der Position (SavetOrdirectory) und dem tatsächlich aufgebauten Dateinamen. Hinweis Ich habe gerade als "Dateiname" genannt (Sie können dies in eine variable Zeichenfolge ändern oder alles, was Sie möchten). Endlich für Excel Docs Sie haben eine Reihe verschiedener Optionen, die einen Workboot speichern. Ich habe mich dafür entschieden, den Standardtyp des Benutzers zu verwenden. Siehe Dateitypen zum Speichern von Excel-Dokumenten hier < / a>

    generasacodicetagpre.

    update

    Ich fand eine sehr einfache Möglichkeit, Kommas in die Währungsnummern mit dem Format

    aufzunehmen generasacodicetagpre.

    oder

    generasacodicetagpre.

    oder (Sie können das $ -Zeichen aus der Zeichenfolge auslassen, wenn Sie diese Version verwenden)

    generasacodicetagpre.

    Diese Methode kann auch für die Prozentwerte verwendet werden (wieder können Sie das %zeichen in der Zeichenfolge mit diesem Verfahren auslassen)

    generasacodicetagpre.

    Informationen zur Formatfunktion Siehe

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top