Just nu i M3-nätverket
Gå till innehåll

Hjälp med flera villkor i samma cell


ZoBa

Rekommendera Poster

Hej,

 

Försöker skapa en formel som returnerar specifik text i F2 beroende av innehållet i F12

tex: =OM(F12="Kalle";"Gul";OM(F12="Magnus";"Röd";OM(F12="Nicklas";"Grön";OM(F12="Adam";"Lila";""))))

Detta har fungerat men nu vill jag lägga till att formeln ska ta hänsyn även till innehållet i F13.

Tex.om i F13 står "Team One" och =OM(F12="Kalle";"Gul";OM(F12="Magnus";"Röd";OM(F12="Nicklas";"Grön";OM(F12="Adam";"Lila";"")))) annars returnera "0".

Jag har försökt med OM(OCH  men inte lyckats. 

 

Tack på förhand!

 

Länk till kommentar
Dela på andra webbplatser

med så många val skulle jag rekommendera att titta på att sätta upp en lista och söka i den efter önskat resultat.

 

Titta på formlerna LETARAD och OMFEL

eller byt ut LETARAD mot paret PASSA och INDEX

Länk till kommentar
Dela på andra webbplatser

Hej tack för hjälpen :thumbsup:  Men nu har jag stött på ett  annat problem. Försöker spara som arbetsboken i samma mapp där mallen är. Försökte hitta en lösning genom att läsa mig till  det men får inte macron att fungera.

 

Sub SparaSom()

Dim sNewFilePath As String

sNewFilePath = ActiveWorkbook.Path

ActiveWorkbook.SaveAs Filename:=Range("A1")

End Sub

 

Detta fungerar så långt att den döper om och sparar men den sparar i min Dokument mapp och om en fil med samma namn finns och väljer att inte skriva över så VBA ger felmeddelande

Länk till kommentar
Dela på andra webbplatser

ja du sätter ju ihop en sökväg du sedan inte använder?

Du hämtar ju hela filnamnet från A1.

Länk till kommentar
Dela på andra webbplatser

Ja det är det som är problemet, vet inte hur ska sökvägen formuleras. Är nybörjare på VBA/Excel och jag försöker förbättra ett befintlig dokument som använder. Meningen är att när jag kör makrot så döper om dokumentet till filnamn hämtad från cell A1 och sparar i befintlig mapp. Om dokument med samma namn existerar och jag väljer att inte skriva över en ska varning dyka upp. Dokumentet (mallen) är en makro fri arbetsbok, alla makro-styra funktioner är kopplade från en "macro-book" . Mallen har en bla. en tillkopplad makro som exporterar aktiv blad i pdf-format i samma mapp som mallen är och med samma namn som bladet heter, men jag är för okunnig för att modifiera och få det.

Länk till kommentar
Dela på andra webbplatser

så kanske:

sNewFilePath = ActiveWorkbook.Path

ActiveWorkbook.SaveAs Filename:=sNewFilePath & "/" &Range("A1")

 

??

Länk till kommentar
Dela på andra webbplatser

Många tack!:thumbsup: 

Cell A1 innehåller information från flera celler som jag hämtar med SAMMANFOGA så makron underlättar oerhört för att jag slipper döpa om varje gång jag sparar.

En sista fråga : går det att utöka makron så att den inte orsakar VBA fel om jag avbryter eller väljer att inte skriva över eventuella filer med samma namn ?

Länk till kommentar
Dela på andra webbplatser

Tja, det finns felhantering i VB(A)

On Error Resume Next

eller

On Error Goto errHandle

eller standard

On Error Goto 0

 

errHandle är då något du skriver in i slutet av din funktion förslagsvis

Sub mySub()
  On Error Goto errHandle
  If('whatever gives and error')
    ' ....
  End If
Exit sub
errHandle
' Ohmy, an error
End Sub

 

Länk till kommentar
Dela på andra webbplatser

Tack!

 

Först visste inte riktigt hur jag ska hantera "felhanteringen"  i VBA men efter lite extra efterforskning så löste jag  problemet med följande makro. Inte den snyggaste kanske men den gör det jag var ute efter ?

 

Sub SparaSomEllerKopia()

 On Error GoTo ErrorHandler

   sNewFilePath = ActiveWorkbook.Path
   ActiveWorkbook.SaveAs Filename:=sNewFilePath & "/" & Range("A1")

ErrorHandler:
  If Err.Number <> 0 Then

If MsgBox("Vill du spara som kopia ?", vbYesNo) = vbNo Then Exit Sub Else
    
       Application.DisplayAlerts = False
       
   sNewFilePath = ActiveWorkbook.Path 
   ActiveWorkbook.SaveAs Filename:=sNewFilePath & "/" & "Kopia-" & Range("A1")

 

       Application.DisplayAlerts = True

   MsgBox ("Arbetsbok sparad som   " & "Kopia-") & Range("A1")


End If

   End Sub

Länk till kommentar
Dela på andra webbplatser

Notera bara att koden kommer gå in errHandle efter ditt försök att svara. Iofs tar din If Err.Number hand om det men det går att lösa med ett exit sub innan errHandle, som jag visade ovan.

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...