AW: sverweis durch vba ersetzen
15.07.2019 22:55:19
Klaus
Hallo Onur, hallo Rainer,
ich bin halt noch ein richtiges Greenhorn. Dennoch vielen Dank, dass ihr mir geantwortet habt.
Die Formel steht in Zelle I8 von 3.1-prot-tool-fachgespräch und sieht so aus.
=WENN(ISTNV(SVERWEIS('3.1-prot-tool-fachgespräch'!B7;'protokoll-bausteine'!$A$3:$P$8;12;FALSCH));""; SVERWEIS('3.1-prot-tool-fachgespräch'!B7;'protokoll-bausteine'!$A$3:$P$8;12;FALSCH))
Eine VBA Lösung würde ich gerne in nachfolgendes Makro einbauen. Die komplette Arbeitsmappe ist sehr umfangreich und enthält auch Infos, die ich nicht gerne veröffentlichen möchte
Sub AlsPDFDiagnose3Speichern()
Dim pdfDateiName As String
Dim pdfname As Variant
'Ausrichtung Querformat
Worksheets("1.1-prot-tool-diagnose").PageSetup.Orientation = 2
'Format automatisch anpassen
Worksheets("1.1-prot-tool-diagnose").PageSetup.Zoom = False
Worksheets("1.1-prot-tool-diagnose").PageSetup.FitToPagesWide = 1
Worksheets("1.1-prot-tool-diagnose").PageSetup.FitToPagesTall = 1
'Datei als "PDF" speichern
pdfDateiName = ActiveWorkbook.Path & ("-") & ActiveSheet.Range("J5") & "-prot-diagnose-" & _
Date & ".pdf"
pdfname = Application.GetSaveAsFilename(InitialFileName:=pdfDateiName, FileFilter:="PDF _
files, *.pdf", Title:="PDF speichern")
If pdfname False Then
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdfDateiName, _
Quality:=xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
Else
Exit Sub
End If
' löscht Zellen nur nach Abfrage
Dim Mldg, Stil, Titel, Hilfe, Ktxt, Antwort, Text1
' Meldung definieren.
Mldg = "Prüfungsnummer eingegeben? Die eingegeben Daten wurden als PDF Datei in dem von _
Ihnen gewählten Ordner gesichert. Wollen Sie die eingegebenen Daten wirklich aus dieser Tabelle löschen?"
' Schaltflächen definieren.
Stil = vbYesNo + vbCritical + vbDefaultButton1
Titel = "Alle eingegebenen Daten werden endgültig gelöscht!"
' Meldung anzeigen.
Antwort = MsgBox(Mldg, Stil, Titel, Hilfe, Ktxt)
' Benutzer hat "Ja" ' gewählt.
If Antwort = vbYes Then
Range("B7,B15,B22,B29,B37,B43,D9:F12,D17:F19,D24:F26,D31:F34,D39:F40,D45:F46,I8,I16,I23,I30, _
I38,I44,J5").Select
Selection.ClearContents
End If
Cells(9, 4).Select
End Sub
Ich hoffe, Ihr könnt damit was anfangen.
Gruß Klaus