Aktuell kann es Probleme bei der Anmeldung mit dem Chrome oder Edge Browser geben. Ihr müsstet in die Einstellungen des Browsers gehen und Cache, Cookies und sofern vorhanden, gespeicherte Passwörter vom CEF löschen oder alternativ auf einen anderen Browser ausweichen. Ursache sind vermutlich kürzliche Browserupdates. x

Fehlende Funktionalitäten in Excel / Brainstorming
#1
Moin zusammen!

Ich bin gerade dabei, ein Add-In zu erstellen, welches die Bedienung von Excel erleichtern soll.
Mir geht es darum, häufig benötigte Abläufe zu integrieren, die mit "Bordmitteln" nur umständlich zu realisieren sind.
("sprechende" Shortcuts inclusive)

Vielleicht erfahre ich auf diesem Wege benötigte Funktionen, die ich vermisse, obwohl es mir bislang nicht auffiel …  :19:

Ich fange mal mit vier Sachen an, die ich im Alltag sehr häufig nutze:

Datei neu laden
gibt es bei OO, bei Excel nicht (Strg+Umsch+N):

Sub NeuLaden()
Application.DisplayAlerts = False
With ActiveWorkbook
  If .Saved Then Exit Sub
  If Dir(.FullName) <> "" Then
     Workbooks.Open .FullName
  Else
     MsgBox .FullName & " wurde noch nicht gespeichert!"
  End If
End With
End Sub


Formeln mit Werten ersetzen
Gern in Verbindung mit =Zufallsbereich() (Strg+Umsch+W):
Sub FormulaToValue()
Selection.Value = Selection.Value
End Sub

Spaltenbreite optimieren
Gerade nach einem Import häufig genutzt (Strg+Umsch+B):
Sub SpaltenOpt()
ActiveSheet.Cells.EntireColumn.AutoFit
End Sub

Zeilen/Spalten einblenden
Auf einen Rutsch, ohne Maus-Jongliererei (Strg+Umsch+E):
Sub AlleEinblenden()
With ActiveSheet.Cells
  .EntireColumn.Hidden = False
  .EntireRow.Hidden = False
End With
End Sub

Vorschläge sind willkommen!

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#2
Hi Ralf,

so auf die ganz schnelle Schnelle ;)  fällt mir ad hoc ein, dass in OO die Spaltenbreite und die Zeilenhöhe in cm angegeben werden kann. Klar, auf dem Papier kommt's meistens ein klein wenig anders raus, aber ich habe dabei trotz allem gute Ergebnisse erzielt. In meinen Formeln- bzw. Codeschnipsel-Sammlungen habe ich irgendwo ein Makro "gebunkert", das dieses auch in XL realisiert - hab's aber gerade nicht gefunden. Ich schau da heute abend mal genauer nach - vielleicht dient es dir als Anhaltspunkt.

Übrigens, Hut ab und schon vorab ein großes Dankeschön für dein Engagement.
Top
#3
Hallo Ralf,

willst Du nur Vorschläge oder auch gleich codes dazu?

z.b.
alle offenen Exceldateien ohne Speichern schließen
alle offenen Exceldateien mit speichern schließen

mit dem Ansatz
Code:
For i = Workbooks.count To 1 Step -1
    If Workbooks(i).name <> ThisWorkbook.name Then Workbooks(i).Close False
  Next
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#4
Hi Ralf,

ich habe die Codes gefunden. Ich weiß leider nicht mehr, woher ich die habe und wer sie geschrieben hat. Hoffentlich macht das nichts aus.

Hier für die Spaltenbreite...


Code:
Sub Spaltenbreite()
Dim sBreite As Single
Dim sAktuell As Single
Dim strText As String
Dim strAntwort As String
 sAktuell = (Selection.ColumnWidth + 0.71) / 5.1425
 strText = "Aktuelle Spaltenbreite: " & _
   Format(sAktuell, "###0.00 cm") & Chr(13) _
   & "Geben Sie die gewünschte Spaltenbreite für die " & _
   "aktuelle Spalte oder Markierung in cm ein:"
 strAntwort = InputBox(strText, "Neue Spaltenbreite festlegen", _
 Format(sAktuell, "###0.00"))
  If strAntwort <> "" Then
    sBreite = CSng(strAntwort)
    Selection.ColumnWidth = -0.71 + 5.1425 * sBreite
  End If
End Sub


... und hier für die Zeilenhöhe


Code:
Sub Zeilenhoehe()
Dim sHoehe As Single
Dim sAktuell As Single
Dim strText As String
Dim strAntwort As String
 sAktuell = Selection.RowHeight / 29.5
 strText = "Aktuelle Zeilenhöhe: " & Format(sAktuell, "###0.00 cm") _
   & Chr(13) & "Geben Sie die gewünschte Zeilenhöhe für die " & _
   "aktuelle Zeile oder Markierung in cm ein:"
 strAntwort = InputBox(strText, "Neue Zeilenhöhe festlegen", _
 Format(sAktuell, "###0.00"))
  If strAntwort <> "" Then
    sHoehe = CSng(strAntwort)
    Selection.RowHeight = sHoehe * 29.5
  End If
End Sub
[-] Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:
  • RPP63
Top
#5
Hi Günter,

(18.12.2015, 22:00)WillWissen schrieb: ich habe die Codes gefunden. Ich weiß leider nicht mehr, woher ich die habe und wer sie geschrieben hat. Hoffentlich macht das nichts aus.

http://netcult.ch/MVP_Ramel/Files/AddIns..._in_cm.XLA Wink

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • RPP63
Top
#6
Hi Uwe,

danke für den Hinweis.
Top
#7
Die Spaltenbreite:

Code:
Sub SpaltenOpt()
   ActiveSheet.Columns.AutoFit
End Sub

Code:
Sub AlleEinblenden()
  With ActiveSheet
    .Columns.Hidden = False
    .Rows.Hidden = False
  End With
End Sub

und
Code:
MsgBox .FullName & " wurde noch nicht gespeichert!"
stiimt nicht, weil es kein .fullname gibt ohne Speicherung.
Top
#8
Hi,

(19.12.2015, 23:41)snb schrieb:
Code:
MsgBox .FullName & " wurde noch nicht gespeichert!"
stiimt nicht, weil es kein .fullname gibt ohne Speicherung.

Dein Unwissen darfst Du gerne für Dich behalten!  :@

Gruß Uwe
Top
#9
Ich möchte vorschlagen:

Code:
Sub M_snb()
    For Each it In Sheets(1).Cells(10, 4).Precedents
      With Sheets(1).Cells(10, 4)
        .Replace it.Address(0, 0), it.Address
        .Replace it.Address(0, 1), it.Address
        .Replace it.Address(1, 0), it.Address
      End With
    Next
End Sub
Top
#10
Hi,

(20.12.2015, 01:05)snb schrieb: Ich möchte vorschlagen:

danke für den Vorschlag, nur:
ich weiß nicht, was wo stehen muß und was das Makro macht.

Hilf mir bitte mit etwas Erleuchtung.
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste