Anzeige
Archiv - Navigation
1604to1608
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

WENN Bedingung

WENN Bedingung
24.01.2018 15:04:35
Georg
Liebe Mitglieder,
ich müsste für die folgende Zeilen noch eine Wenn Bedingung einfügen, schaff das aber nicht alleine:
Wenn J494 den Wert 0 hat oder leer ist, dann soll in J38 der Wert 0, sonst der Wert aus J494 übernommen werden.
DANKE
Sub copy()
Set WbQ = Workbooks.Open(strFileName)
For i = 3 To 19
WbZ.Worksheets(i).range("J38") = WbQ.Worksheets(i).range("J494")
Next i
End 

Sub


		

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: WENN Bedingung
24.01.2018 15:33:35
Werner
Hallo Georg,
Sub copy()
Set wbQ = Workbooks.Open(strFileName)
For i = 3 To 19
If wbQ.Worksheets(i).Range("J494").Value = 0 _
Or wbQ.Worksheets(i).Range("J494").Value = "" Then
wbZ.Worksheets(i).Range("J38").Value = 0
Else
wbZ.Worksheets(i).Range("J38").Value = wbQ.Worksheets(i).Range("J494").Value
End If
Next i
End
Gruß Werner
AW: WENN Bedingung
24.01.2018 15:43:55
Georg
Hallo Werner, ich bekomme dabei einen Laufzeitfehler 13: Typen unverträglich!
Was bedeutet das, bzw. was stimmt hier nicht?
Der Code fängt so an:
Sub Datenimport()
Dim WbZ As Workbook: Set WbZ = ThisWorkbook 'Ziel-Mappe = DIE Vorlagen-Mappe
Dim WbQ As Workbook, datei$
Dim dialog As Object
Dim fileSaveName As Variant
Dim pfad As Variant
Dim strfilter As String
Dim strFileName As Variant
Dim i As Integer
Dim strDateiname As String
'** Laufwerk und Pfad definieren, welcher geöffnet werden soll, wenn C:\ geöffnet  _
werden soll, _
einfach weglassen
ChDrive "Q"
ChDir "Q:\Personalwesen\Sonstige\Personalplanung\Entwürfe_Temp(GR)"
'** Dateifilter definieren
strfilter = "Excel File mit Makro (*.xlsm), *.xlsm"
'** Den im Dialogfeld gewählten Namen auslesen
strFileName = Application.GetOpenFilename(strfilter)
'** Prüfen, ob eine gültige Datei ausgewählt wurde
If strFileName = False Then Exit Sub
Application.ScreenUpdating = False
'1 Überträge kopieren
'** Gewählte Datei öffnen
Set WbQ = Workbooks.Open(strFileName)
und dann deine Ergänzung
End Sub

Anzeige
AW: WENN Bedingung
24.01.2018 17:38:35
Werner
Hallo Georg,
und in welcher Codezeile - poste doch mal den gesamten Code und nicht nur einen Teil.
Gruß Werner
AW: WENN Bedingung
25.01.2018 08:07:15
Georg
Hallo Werner, ab der eingefügten if-Bedingung:
Der Code komplett, danke!
Sub Datenimport()
Dim WbZ As Workbook: Set WbZ = ThisWorkbook 'Ziel-Mappe = DIE Vorlagen-Mappe
Dim WbQ As Workbook, datei$
Dim dialog As Object
Dim fileSaveName As Variant
Dim pfad As Variant
Dim strfilter As String
Dim strFileName As Variant
Dim i As Integer
Dim strDateiname As String
'** Laufwerk und Pfad definieren, welcher geöffnet werden soll, wenn C:\ geöffnet  _
werden soll, _
einfach weglassen
ChDrive "Q"
ChDir "Q:\Personalwesen\Sonstige\Personalplanung\Entwürfe_Temp(GR)"
'** Dateifilter definieren
strfilter = "Excel File mit Makro (*.xlsm), *.xlsm"
'** Den im Dialogfeld gewählten Namen auslesen
strFileName = Application.GetOpenFilename(strfilter)
'** Prüfen, ob eine gültige Datei ausgewählt wurde
If strFileName = False Then Exit Sub
Application.ScreenUpdating = False
'1 Überträge kopieren
'** Gewählte Datei öffnen
Set WbQ = Workbooks.Open(strFileName)
For i = 3 To 19
If WbQ.Worksheets(i).range("J494").Value = 0 _
Or WbQ.Worksheets(i).range("J494").Value = "" Then
WbZ.Worksheets(i).range("J38").Value = 0
Else
WbZ.Worksheets(i).range("J38").Value = WbQ.Worksheets(i).range("J494").Value
End If
Next i
'2 Daten kopieren
WbQ.Activate
Sheets(1).Select
range("B3:F32").Select
Selection.Copy
WbZ.Activate
Sheets("BpxBeispiel_Stammdaten").Activate
range("b3").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
WbQ.Activate
Sheets("AZDaten").Activate
range("c18:M33").Select
Selection.Copy
WbZ.Activate
Sheets("AZDaten").Activate
range("c18").Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
WbQ.Close SaveChanges:=False
'ActiveWindow.Close 'letzte Zeile
Application.DisplayAlerts = True
'3 Sheets umbenennen aus den Namen der Stammdaten
With ThisWorkbook
On Error Resume Next
For i = 3 To 19
ThisWorkbook.Sheets(i).Name = Sheets("BpxBeispiel_Stammdaten").range("C" & i + 5)
Next i
For i = 1 To 1
ActiveWorkbook.Sheets(i).Buttons.Delete
Next i
.Sheets("BpxBeispiel_Stammdaten").Name = Sheets("AZDaten").range("R5")
.Sheets("Abrechnung_Beispiel").Name = Sheets("AZDaten").range("Q6")
End With
'ActiveWorkbook.Sheets(2).Unprotect Password:="Personal"
'4 Buttons Löschen
'ThisWorkbook.Activate
'On Error Resume Next
'For i = 1 To 1
'   ActiveWorkbook.Sheets(i).Buttons.Delete
'Next i
' 5 Speichern
ChDrive "Q:\"
ChDir "\Personalwesen\Sonstige\Personalplanung\"
strDateiname = ("BPxNamenVERGEBEN.xlsm")
Application.Dialogs(xlDialogSaveAs).Show (strDateiname)
End Sub

Anzeige
AW: WENN Bedingung
25.01.2018 09:23:09
Werner
Hallo Georg,
kann es sein, dass in J494 Fehlerwerte stehen?
Und wenn ja, was soll in dem Fall in J38 rein?
Gruß Werner
AW: WENN Bedingung
25.01.2018 10:34:05
Georg
Werner ja das ist tw so, und ich weiß nicht warum. Ich lade ein BeispielBlatt mit, J494 entspricht im Beispiel D43, schau dir mal bitte diese Zelle an, ich komm nicht dahinter, warum #Wert! angezeigt wird. Vielleicht können wir es darüber lösen. Danke
www.herber.de/bbs/user/119244.xlsx
AW: WENN Bedingung
25.01.2018 10:50:23
Werner
Hallo Georg,
nimm Summe
=WENN($D$1="GfB";"";SUMME(D38;D41))
Gruß Werner
AW: WENN Bedingung
25.01.2018 12:06:55
Georg
Danke Werner, es geht jetzt, es sind oft Kleinigkeiten. Warum macht Summe einen Unterschied zu Zelle1 + Zelle2?
Anzeige
AW: WENN Bedingung
25.01.2018 12:17:56
Werner
Hallo Georg,
du hattest/hast ein Leerzeichen in der Zelle D38. Somit ist für Excel dort ein String(Text) vorhanden, die Zelle ist nicht leer. Damit kannst du dann aber nicht mit + rechnen, einen Text kann man nicht addieren, Summe ignoriert das.
Wie das Leerzeichen dort rein gekommen ist, mußt du selbst beantworten. Lass mal deine alte Formel in D43 und geh dann in die Zelle D38 und drücke die Entfernen Taste.
Gruß Werner
AW: WENN Bedingung
25.01.2018 13:02:11
Georg
Werner, vielen Dank für diese genaue Analyse, ich wäre da nicht draufgekommen, selbst jetzt beim Überpüfen hätte ich es ohne deinen Hinweis nicht bemerkt. Es lohnt sich genauer hinzuschauen, besten Dank nochmals. Gruß G
Anzeige
Gerne u.Danke für die Rückmeldung. o.w.T.
25.01.2018 13:15:57
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige