-
Fototrend
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
szricsi_0917
tag
válasz
Delila_1 #47045 üzenetére
Szia
Ahogy mondtam neked becsatolom az elvileg majdnem végleges megoldást. Most 4x csinálja meg a folyamatot, mert 4 sheeten is végig kell mennie. Ahogy látom így is elég gyors lett.
Private Sub Kalkuláció_Click()
Dim i As Long, InduloIdo As Single
InduloIdo = Timer
Dim sor_allapot As Integer
Dim sor_anyag As Integer
Dim oszlop As Integer
Dim lastrow_allapot As Integer
Dim lastrow_anyag As Integer
Dim sorszam As Integer
Dim cikkszam As String
Dim osszeg As Double
Dim TIB As String
Dim csere_sor As Integer
Dim csere_oszlop As Integer
If tib_lista.Value = "" Then
MsgBox "Nincs kitöltve TIB azonosító!", vbCritical, "Figyelmeztetés"
Exit Sub
Else
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Application.DisplayStatusBar = False
Application.EnableEvents = False
lastrow_allapot = Sheets("Gerinc kiépítés állapot").Range("S" & Rows.Count).End(xlUp).Row
lastrow_anyag = Sheets("Anyagösszesítő").Range("a" & Rows.Count).End(xlUp).Row
cikkszam = ""
TIB = tib_lista.Value
Sheets("Anyagösszesítő").Range("F2:F" & lastrow_anyag) = ""
For sor_allapot = 3 To lastrow_allapot
If Sheets("Gerinc kiépítés állapot").Cells(sor_allapot, "S") = TIB Then
For sor_anyag = 2 To lastrow_anyag
osszeg = 0
cikkszam = Sheets("Anyagösszesítő").Cells(sor_anyag, 2)
sorszam = Sheets("Gerinc kiépítés állapot").Cells(sor_allapot, 1)
For oszlop = 67 To 162 Step 5
If Sheets("Gerinc kiépítés adat").Cells(sorszam, oszlop - 1) = cikkszam Then
osszeg = osszeg + Sheets("Gerinc kiépítés adat").Cells(sorszam, oszlop)
End If
Next
Sheets("Anyagösszesítő").Cells(sor_anyag, "F").Value = Sheets("Anyagösszesítő").Cells(sor_anyag, "F").Value + osszeg
Next
End If
Next
lastrow_allapot = Sheets("Alépítmény állapot").Range("z" & Rows.Count).End(xlUp).Row
lastrow_anyag = Sheets("Anyagösszesítő").Range("a" & Rows.Count).End(xlUp).Row
cikkszam = ""
Sheets("Anyagösszesítő").Range("g2:g" & lastrow_anyag) = ""
For sor_allapot = 3 To lastrow_allapot
If Sheets("Alépítmény állapot").Cells(sor_allapot, "z") = TIB Then
For sor_anyag = 2 To lastrow_anyag
osszeg = 0
cikkszam = Sheets("Anyagösszesítő").Cells(sor_anyag, 2)
sorszam = Sheets("Alépítmény állapot").Cells(sor_allapot, 1)
For oszlop = 81 To 176 Step 5
If Sheets("Alépítmény adat").Cells(sorszam, oszlop - 1) = cikkszam Then
osszeg = osszeg + Sheets("Alépítmény adat").Cells(sorszam, oszlop)
End If
Next
Sheets("Anyagösszesítő").Cells(sor_anyag, "g").Value = Sheets("Anyagösszesítő").Cells(sor_anyag, "g").Value + osszeg
Next
End If
Next
lastrow_allapot = Sheets("Házhálózat állapot").Range("v" & Rows.Count).End(xlUp).Row
lastrow_anyag = Sheets("Anyagösszesítő").Range("a" & Rows.Count).End(xlUp).Row
cikkszam = ""
Sheets("Anyagösszesítő").Range("h2:h" & lastrow_anyag) = ""
For sor_allapot = 3 To lastrow_allapot
If Sheets("Házhálózat állapot").Cells(sor_allapot, "v") = TIB Then
For sor_anyag = 2 To lastrow_anyag
osszeg = 0
cikkszam = Sheets("Anyagösszesítő").Cells(sor_anyag, 2)
sorszam = Sheets("Házhálózat állapot").Cells(sor_allapot, 1)
For oszlop = 84 To 179 Step 5
If Sheets("Házhálózat adat").Cells(sorszam, oszlop - 1) = cikkszam Then
osszeg = osszeg + Sheets("Házhálózat adat").Cells(sorszam, oszlop)
End If
Next
Sheets("Anyagösszesítő").Cells(sor_anyag, "h").Value = Sheets("Anyagösszesítő").Cells(sor_anyag, "h").Value + osszeg
Next
End If
Next
lastrow_allapot = Sheets("Optikai kötés állapot").Range("q" & Rows.Count).End(xlUp).Row
lastrow_anyag = Sheets("Anyagösszesítő").Range("a" & Rows.Count).End(xlUp).Row
cikkszam = ""
Sheets("Anyagösszesítő").Range("i2:i" & lastrow_anyag) = ""
For sor_allapot = 3 To lastrow_allapot
If Sheets("Optikai kötés állapot").Cells(sor_allapot, "q") = TIB Then
For sor_anyag = 2 To lastrow_anyag
osszeg = 0
cikkszam = Sheets("Anyagösszesítő").Cells(sor_anyag, 2)
sorszam = Sheets("Optikai kötés állapot").Cells(sor_allapot, 1)
For oszlop = 64 To 159 Step 5
If Sheets("Optikai kötés adat").Cells(sorszam, oszlop - 1) = cikkszam Then
osszeg = osszeg + Sheets("Optikai kötés adat").Cells(sorszam, oszlop)
End If
Next
Sheets("Anyagösszesítő").Cells(sor_anyag, "i").Value = Sheets("Anyagösszesítő").Cells(sor_anyag, "i").Value + osszeg
Next
End If
Next
Sheets("Anyagösszesítő").Select
For csere_oszlop = 6 To 9
For csere_sor = 2 To lastrow_anyag
If Sheets("Anyagösszesítő").Cells(csere_sor, csere_oszlop) = 0 Then
Sheets("Anyagösszesítő").Cells(csere_sor, csere_oszlop) = "-"
End If
Next
Next
tib_lista.Value = ""
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
Application.DisplayStatusBar = True
Application.EnableEvents = True
MsgBox "Az összesítés elkészült!" & vbNewLine & vbNewLine & "Futási idő: " & Format((Timer - InduloIdo) / 86400, "hh:mm:ss") & vbNewLine, , "" '86400 = 24*60*60
End If
End Sub
Új hozzászólás Aktív témák
- Villanyszerelés
- gban: Ingyen kellene, de tegnapra
- Meghalt a Windows 10, éljen a Windows 10!
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Vivo X200 Pro - a kétszázát!
- Anime filmek és sorozatok
- Soundbar, soundplate, hangprojektor
- iPhone topik
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Borotva, szakállnyíró, szakállvágó topic
- További aktív témák...
- Új Asus 18 ROG WQXGA MiniLED 240Hz G-Sync i9-14900HX 32GB 2TB SSD Nvidia RTX 4090 16GB 175W Garancia
- Konzol felvásárlás!! Nintendo Switch
- HIBÁTLAN iPhone 13 mini 256GB Pink -1 ÉV GARANCIA - Kártyafüggetlen, MS3440, 90% Akkumulátor
- ÚJ HP ProBook 445 G11 - 14" WUXGA - Ryzen 5 7535U - 16GB - 256GB - MAGYAR - 2+ év garancia
- HIBÁTLAN iPhone 12 Mini 128GB Black-1 ÉV GARANCIA - Kártyafüggetlen,MS3634,94% Akkumulátor
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest