Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Fehlende Funktionalitäten in Excel / Brainstorming
#11
Was F4 tut im 'Edit' eines Formels: wechselt =A1, zu =$A1, zu =A$1 zu =$A$1. Aber nur eine einzelne Verweisung.

Meiner Vorschlag beinhaltet das alle Verweisungen gleichzeitig gewechselt werden.
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • RPP63
Antworten Top
#12
Hi,

(20.12.2015, 12:59)snb schrieb: Meiner Vorschlag beinhaltet das alle Verweisungen gleichzeitig gewechselt werden.

aah, ok, das ist interessant.
Wenn also in einer Formel mehrere Verweise auf andere Zellen enthalten sind, wird mit jedem Makroaufruf für alle Verweise die relative/absolute Formatierung weitergewechselt.
Antworten Top
#13
Stimmt,

Z. B in A1

= F12 & G23 & B$6 & $C2

wird durch das Makro geändert zu:

= $F$12 & $G$23 & $B$6 & $C$2
Antworten Top
#14
Hallo!
Da sind ja ein paar interessante Sachen dabei:
  • Spaltenbreite in cm
  • Alles schließen
  • Alle Bezüge absolutieren

snbs Makro habe ich auf aktuelle Markierung umgestellt:
Sub M_snb()
Dim it As Object
    For Each it In Selection.Precedents
      With Selection
        .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

Erstmal Danke für die Inputs!

Ich ärgere mich häufig über die Anzeige der Seitenumbrüche, die ja nur sehr versteckt ausgeschaltet werden können.
Folgendes switcht die Anzeige:
Sub UmbruchAnAus()
ActiveSheet.DisplayPageBreaks = Not ActiveSheet.DisplayPageBreaks
End Sub

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)
Antworten Top
#15
Hi Ralf,

(18.12.2015, 13:51)RPP63 schrieb: 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)
[...]
Vorschläge sind willkommen!

Aus dem Herber-Forum von MikeS:
Ein und Ausblenden von Arbeitsblättern
Sub EinblendenVersteckteBlätter()
 Dim Blatt As Worksheet
   For Each Blatt In Sheets
     Blatt.Visible = True
   Next Blatt
End Sub

Sub AusblendenAußerAktivesBlatt()
 Dim Blatt As Object
   For Each Blatt In Sheets
     If Blatt.Name <> ActiveSheet.Name Then
     Blatt.Visible = False
     End If
   Next Blatt
End Sub

Aktualisieren von Pivots
Wenn die PT in einem separaten Tabellenblatt erstellt wurde, kann man hinter das Modul des Tabellenblattes auch ein Worksheet_Activate-Makro hinterlegen:
Code:
Private Sub Worksheet_Activate()
Dim pt As PivotTable
  For Each pt In ActiveSheet.PivotTables
     pt.RefreshTable
  Next pt
End Sub

Wenn die PT im gleichen Arbeitsblatt liegt, dann könnte man einfach einen CommandButton aus den ActiveX-Steuerelementen im Menü Entwicklertools aufziehen und den folgenden Code hinterlegen:
Code:
Private Sub CommandButton1_Click()
Dim pt As PivotTable
  For Each pt In ActiveSheet.PivotTables
     pt.RefreshTable
  Next pt
End Sub

Wenn mehrere PTs in einer Mappe liegen und auf einen Schlag alle PTs aktualisiert werden sollen, dann könnte man folgende Prozedur nutzen:
Für einen Durchlauf durch alle PTs einer Mappe :
Code:
Sub RefreshPT()
   Dim wS As Worksheet
   Dim pt As PivotTable
   For Each wS In ActiveWorkbook.Worksheets
       For Each pt In wS.PivotTables
           pt.RefreshTable
       Next pt
   Next wS
End Sub

Aktualisierung aller PTs des Tabellenblattes bei Änderungen im Bereich A2 bis K12:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim Bereich1 As Range
  Dim pt As PivotTable
 
  Set Bereich1 = Range("A2:K12")
  If Not Intersect(Target, Bereich1) Is Nothing Then
     For Each pt In ActiveSheet.PivotTables
        pt.RefreshTable
     Next pt
  End If
End Sub
Antworten Top
#16
@Rabe

Wäre es nicht einfacher ?

Code:
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.PivotTables.Count > 0 Then ActiveWorkbook.RefreshAll
End Sub

und

Code:
Sub M_Ausblenden()
   activesheet.visible=true
   For Each sh In Sheets
     sh.Visible = sh.name=activesheet.name
   Next
End Sub
Antworten Top


Gehe zu:


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