Detta fel gör mig galen. Det märkliga med detta är att det inte blir fel för alla användare, kanske 3 - 4 %. Användare det smäller för säger sig ska ha de rättigheter som krävs mot databasen. Den rad det kraschar på är den rad med fet stil alldeles under smileyn . Jag lägger in den raden här också för säkerhetts skull:
Range("Tabell_Database31.accdb_5").ListObject.QueryTable.Refresh BackgroundQuery:=False
Innan denna rad har man gjort connect mot databasen som går bra.
Koden nedan....
Med hopp om en lösning....
Mvh Frippelino
Private Sub CommandValOK_Click()
Dim cn As ADODB.Connection, rs As ADODB.Recordset
Dim strSQL As String
Dim r As Integer
UserFormVal.Hide
ActiveWorkbook.Unprotect BladLösen
Sheets("START").Visible = False
ActiveWorkbook.Protect BladLösen
Sheets("Veckobemanning").Select
Application.ScreenUpdating = False
If ComboVal1 = "" Or ComboVal2 = "" Or ComboVal3 = "" Then
MsgBox "Du har gjort ett ofullständigt val. Komplettera!"
UserFormVal.Show
End If
Range("Val").Cells(1) = UserFormVal.ComboVal1
Range("Val").Cells(2) = UserFormVal.ComboVal2
Range("Val").Cells(3) = UserFormVal.ComboVal3
ActiveWorkbook.Unprotect BladLösen
For r = 0 To 250
If Range("Tabell_Database31.accdb2").Cells(r + 1, 1) = "" Then Exit For
If Sheets("Parametrar").Range("H" & r + 2) = Range("Val").Cells(1) * 1 Then
Behörighet = 1
Exit For
End If
Next r
If Behörighet = 0 Then
MsgBox "Du saknar behörighet till vald enhet. Gör nytt val!"
UserFormVal.ComboVal1 = ""
UserFormVal.Show
End If
Call Enhetshämtning
Application.ScreenUpdating = False
Sheets("Bemanning och Schema").Unprotect BladLösen
ActiveWorkbook.Unprotect BladLösen
With ActiveWorkbook.Connections("Database311").OLEDBConnection
.CommandText = Array("execute sp_bemanning " + Range("Val").Cells(1))
End With
With ActiveWorkbook.Connections("Database315").OLEDBConnection
.CommandText = Array("execute sp_schema " + Range("Val").Cells(1))
End With
With ActiveWorkbook.Connections("Database317").OLEDBConnection
.CommandText = Array("execute sp_semester " + Range("Val").Cells(1))
End With
With ActiveWorkbook.Connections("Database3133111").OLEDBConnection
.CommandText = Array("execute sp_tjgmonster " + Range("Val").Cells(1))
End With
With ActiveWorkbook.Connections("Database31").OLEDBConnection
.CommandText = Array("execute sp_kapacitet_veckodump " + Range("Val").Cells(1) + ", " + Range("Val").Cells(3) + ", " + Range("Val").Cells(2))
End With
'Application.ScreenUpdating = True
' ActiveSheet.Shapes.Range(Array("Rounded Rectangle 12")).Visible = True
' Application.Wait Now + TimeValue("00:00:01")
'Application.ScreenUpdating = False
Range("Tabell_Database31.accdb_5").ListObject.QueryTable.Refresh BackgroundQuery:=False
Range("Tabell_Database31.accdb_6").ListObject.QueryTable.Refresh BackgroundQuery:=False
Range("Tabell_Database31.accdb174").ListObject.QueryTable.Refresh BackgroundQuery:=False
Range("Tabell_Database31.accdb_331757").ListObject.QueryTable.Refresh BackgroundQuery:=False
Range("Tabell_Database31.accdb").ListObject.QueryTable.Refresh BackgroundQuery:=False
With ActiveWorkbook.Connections("PpvDbTest").OLEDBConnection
.CommandText = Array("execute sp_data_PlaneradKapacitet_PerEnhet " + Range("Val").Cells(1))
End With
'ThisWorkbook.Connections("PpvDbTest").Refresh
Sheets("Veckobemanning").Unprotect BladLösen
Sheets("Veckobemanning").Range("Y1:AW1").Interior.Color = 225
Sheets("Veckobemanning").Range("Y1:AW1") = "Ej uppdaterat figur Ej uppdaterat figur" & _
" Ej uppdaterat figur Ej uppdaterat figur Ej uppdaterat figur"
Sheets("Veckobemanning").Protect BladLösen
'Application.Wait Now + TimeValue("00:00:02")
Call PlockaTjPost
Call PlockaAvvikelsePost
Call FyllSnabbval
'ActiveSheet.Shapes.Range(Array("Rounded Rectangle 12")).Visible = False
ActiveWorkbook.Sheets("Bemanning och Schema").Protect BladLösen
ActiveWorkbook.Sheets("Veckobemanning").Unprotect BladLösen
For a = 1 To 100
If Range("BehörighetsYta").Cells(a) = Range("Val").Cells(1) * 1 Then Exit For
Next a
Sheets("Veckobemanning").Range("D1") = a
Sheets("Veckobemanning").ComboBox1 = Range("Val").Cells(3)
Sheets("Veckobemanning").ComboBox2 = Range("Val").Cells(2)
Sheets("Veckobemanning").ComboBox3.ListFillRange = "Personvalsyta"
ActiveWorkbook.Sheets("Veckobemanning").Protect BladLösen
Sheets("Översikt Planerad tid").Unprotect BladLösen
Sheets("Översikt Planerad tid").PivotTables("Pivottabell1").PivotCache.Refresh
Sheets("Översikt Planerad tid").Protect BladLösen, DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowFiltering:=True, AllowUsingPivotTables:=True
ActiveWorkbook.Protect BladLösen
Call NollSchemaposter
Application.ScreenUpdating = True
End Sub